diff --git a/.bazelci/presubmit.yml b/.bazelci/presubmit.yml index 2792a5bca..f75866c24 100644 --- a/.bazelci/presubmit.yml +++ b/.bazelci/presubmit.yml @@ -9,42 +9,11 @@ buildifier: # are fixed. warnings: "attr-cfg,attr-license,attr-non-empty,attr-output-default,attr-single-file,confusing-name,constant-glob,ctx-actions,ctx-args,depset-iteration,depset-union,dict-concatenation,duplicated-name,filetype,function-docstring,git-repository,http-archive,integer-division,load,load-on-top,module-docstring,name-conventions,native-build,native-package,no-effect,output-group,package-name,package-on-top,positional-args,redefined-variable,repository-name,same-origin-load,string-iteration,unreachable,unused-variable" tasks: - rbe_autoconfig: - platform: rbe_ubuntu1604 - test_targets: + presubmit: + platform: ubuntu1604 + build_targets: - "--" - # rbe_autoconfig tests - - "//tests/rbe_repo/..." - # tests that require output_base / config_repos are timing out. - # TODO(nlopezgi): debug, fix and enable these tests. - - "-//tests/rbe_repo:rbe_autoconf_output_base_test" - - "-//tests/rbe_repo:rbe_autoconf_output_base_no_java_test" - - "-//tests/rbe_repo:rbe_autoconf_output_base_no_cc_test" - - "-//tests/rbe_repo:rbe_autoconf_config_repos_output_base_test" - - "-//tests/rbe_repo:rbe_autoconf_config_repos_output_base_run_in_container_test" - - "-//tests/rbe_repo:rbe_autoconf_config_repos_run_in_container_test" - - "-//tests/rbe_repo:rbe_autoconf_config_repos_sh_toolchain_test" - - "-//tests/rbe_repo:rbe_autoconf_config_repos_no_cc_config_run_in_container_test" - - "-//tests/rbe_repo:rbe_autoconf_config_repos_no_cc_config_sh_toolchain_test" - # docker_autoconfig tests require 'docker' and run in GCB - test_flags: - - "--action_env=RBE_AUTOCONF_ROOT=/workdir" - - "--action_env=PATH" - - "--test_output=errors" - - "--verbose_failures" - - "--test_tag_filters=-windows" - rbe_exec_properties: - # Run tests on RBE. These tests run on platforms with various execution - # properties. the tests verify that the approriate properties are set (or not set). - # The properties are configured on the platforms using create_exec_properties_dict(). - platform: rbe_ubuntu1604 + - "..." test_targets: - "--" - - "//tests/rules/exec_properties/..." - test_flags: - - "--test_output=errors" - - "--verbose_failures" - - "--extra_execution_platforms=@rbe_default_exec_properties//config:platform,//tests/rules/exec_properties:platform_privileged_on,//tests/rules/exec_properties:platform_network_enabled,//tests/rules/exec_properties:platform_bespoke_network_enabled,//tests/rules/exec_properties:platform_overridden_network_enabled" - - "--host_platform=@rbe_default_exec_properties//config:platform" - - "--platforms=@rbe_default_exec_properties//config:platform" - - "--test_tag_filters=-windows" + - "..." diff --git a/BUILD b/BUILD index 41c81b8ad..6c34971dc 100644 --- a/BUILD +++ b/BUILD @@ -11,11 +11,3 @@ # 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. - -# Gazelle is imported by rules_docker's dependency loader macro. -load("@bazel_gazelle//:def.bzl", "gazelle") - -gazelle( - name = "gazelle", - prefix = "github.com/bazelbuild/bazel-toolchains", -) diff --git a/WORKSPACE b/WORKSPACE index e6a7b4058..e2aa038c4 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -13,634 +13,9 @@ # limitations under the License. workspace(name = "bazel_toolchains") -load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_file") load( "//repositories:repositories.bzl", bazel_toolchains_repositories = "repositories", ) bazel_toolchains_repositories() - -load( - "@io_bazel_rules_docker//toolchains/docker:toolchain.bzl", - docker_toolchain_configure = "toolchain_configure", -) - -docker_toolchain_configure( - name = "docker_config", - docker_path = "/usr/bin/docker", -) - -load( - "@io_bazel_rules_docker//repositories:repositories.bzl", - container_repositories = "repositories", -) - -container_repositories() - -load("@io_bazel_rules_docker//repositories:deps.bzl", container_deps = "deps") - -container_deps() - -load( - "@io_bazel_rules_docker//repositories:go_repositories.bzl", - container_go_deps = "go_deps", -) - -container_go_deps() - -load( - "@io_bazel_rules_docker//container:container.bzl", - "container_pull", -) -load( - "//repositories:images.bzl", - bazel_toolchains_images = "images", -) - -bazel_toolchains_images() - -container_pull( - name = "official_jessie", - registry = "index.docker.io", - repository = "library/debian", - tag = "jessie", -) - -container_pull( - name = "official_xenial", - registry = "index.docker.io", - repository = "library/ubuntu", - tag = "16.04", -) - -# Pinned to marketplace.gcr.io/google/clang-ubuntu@sha256:ab3f65314c94279e415926948f8428428e3b6057003f15197ffeae0b1b5a2386 -# solely for testing purpose used by //tests/config:ubuntu16_04_clang_autoconfig_test. -container_pull( - name = "ubuntu16_04-clang-test", - digest = "sha256:ab3f65314c94279e415926948f8428428e3b6057003f15197ffeae0b1b5a2386", - registry = "marketplace.gcr.io", - repository = "google/clang-ubuntu", -) - -# Test purpose only. bazel-toolchains repo at release for Bazel 0.24.0. -# https://github.com/bazelbuild/bazel-toolchains/releases/tag/cddc376 -http_file( - name = "bazel_toolchains_test", - downloaded_file_path = "cddc376d428ada2927ad359211c3e356bd9c9fbb.tar.gz", - sha256 = "67335b3563d9b67dc2550b8f27cc689b64fadac491e69ce78763d9ba894cc5cc", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/archive/cddc376d428ada2927ad359211c3e356bd9c9fbb.tar.gz", - "https://github.com/bazelbuild/bazel-toolchains/archive/cddc376d428ada2927ad359211c3e356bd9c9fbb.tar.gz", - ], -) - -# Download test file to test gcs_file rule -load("//rules:gcs.bzl", "gcs_file") - -gcs_file( - name = "download_test_gcs_file", - bucket = "gs://bazel-toolchains-test", - downloaded_file_path = "test.txt", - file = "test.txt", - sha256 = "5feceb66ffc86f38d952786c6d696c79c2dbc239dd4e91b46729d73a27fb57e9", -) - -load("@bazel_toolchains//rules:rbe_repo.bzl", "rbe_autoconfig") - -# Targets used by automatic config generation and release service. -load( - "//configs/dependency-tracking:ubuntu1604.bzl", - _ubuntu1604_bazel = "bazel", - _ubuntu1604_configs_version = "configs_version", - _ubuntu1604_digest = "digest", - _ubuntu1604_registry = "registry", - _ubuntu1604_repository = "repository", -) - -# Default target used in tests that run with several Bazel versions -rbe_autoconfig( - name = "rbe_default", -) - -# Same as @rbe_default except that the platform uses exec_properties instead of remote_execution_properties. -rbe_autoconfig( - name = "rbe_default_exec_properties", - use_legacy_platform_definition = False, -) - -# Automatic config generation target for RBE Ubuntu 16.04 -rbe_autoconfig( - name = "rbe_autoconfig_autogen_ubuntu1604", - bazel_version = _ubuntu1604_bazel, - digest = _ubuntu1604_digest, - export_configs = True, - registry = _ubuntu1604_registry, - repository = _ubuntu1604_repository, - toolchain_config_spec_name = _ubuntu1604_configs_version, - use_checked_in_confs = "False", -) - -# RBE Autoconfig targets to do integration testing on the automatic toolchain -# configs release process. -load( - "//tests/config/dependency-tracking:trigger_config_gen.bzl", - _bazel_trigger_config_gen = "bazel", - _configs_version_trigger_config_gen = "configs_version", - _digest_trigger_config_gen = "digest", - _registry_trigger_config_gen = "registry", - _repository_trigger_config_gen = "repository", -) -load("//rules/rbe_repo:util.bzl", "rbe_autoconfig_root") -load( - "//rules/rbe_repo:toolchain_config_suite_spec.bzl", - rbe_default_repo = "default_toolchain_config_suite_spec", -) -load( - "//tests/config:trigger_config_gen/versions.bzl", - _toolchain_config_suite_autogen_spec_trigger_config_gen = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) - -# Automatic E2E test config generation target for RBE Ubuntu 16.04 that should -# generate new configs because dependencies have changed. -rbe_autoconfig( - name = "rbe_ubuntu1604_trigger_config_gen_test", - bazel_version = _bazel_trigger_config_gen, - create_versions = False, - digest = _digest_trigger_config_gen, - export_configs = True, - registry = _registry_trigger_config_gen, - repository = _repository_trigger_config_gen, - toolchain_config_spec_name = _configs_version_trigger_config_gen, - toolchain_config_suite_spec = { - "container_registry": _registry_trigger_config_gen, - "container_repo": _repository_trigger_config_gen, - "output_base": "tests/config/trigger_config_gen", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": _toolchain_config_suite_autogen_spec_trigger_config_gen, - }, - use_checked_in_confs = "False", -) - -load( - "//tests/config/dependency-tracking:no_updates.bzl", - _bazel_no_updates = "bazel", - _configs_version_no_updates = "configs_version", - _digest_no_updates = "digest", - _registry_no_updates = "registry", - _repository_no_updates = "repository", -) -load( - "//tests/config:no_updates/versions.bzl", - _toolchain_config_suite_autogen_spec_no_updates = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) - -# Automatic E2E test config generation target for RBE Ubuntu 16.04 that should -# not generate any new configs. -rbe_autoconfig( - name = "rbe_ubuntu1604_configs_no_update_test", - bazel_version = _bazel_no_updates, - create_versions = False, - digest = _digest_no_updates, - export_configs = True, - registry = _registry_no_updates, - repository = _repository_no_updates, - toolchain_config_spec_name = _configs_version_no_updates, - toolchain_config_suite_spec = { - "container_registry": _registry_no_updates, - "container_repo": _repository_no_updates, - "output_base": "tests/config/no_updates", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": _toolchain_config_suite_autogen_spec_no_updates, - }, - use_checked_in_confs = "Force", -) - -load("//rules:environments.bzl", "clang_env") - -# Used in the RBE Ubuntu1604 container release. -rbe_autoconfig( - name = "rbe_ubuntu1604_test", - env = clang_env(), - registry = "gcr.io", - repository = "asci-toolchain/test-rbe-ubuntu16_04", - tag = "latest", -) - -# Used in the RBE Ubuntu1804 container release. -rbe_autoconfig( - name = "rbe_ubuntu1804_test", - env = clang_env(), - registry = "gcr.io", - repository = "rbe-containers/test-rbe-ubuntu18_04", - tag = "latest", -) - -# Targets below for purposes of testing of rbe_autoconfig rule only - -rbe_autoconfig( - name = "rbe_autoconf_checked_in", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_checked_in_no_java", - bazel_version = _ubuntu1604_bazel, - create_java_configs = False, - create_testdata = True, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_checked_in_no_cc", - bazel_version = _ubuntu1604_bazel, - create_cc_configs = False, - create_testdata = True, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_generate", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_generate_windows", - bazel_version = "3.1.0", - create_testdata = True, - digest = "sha256:776f241c2693f3f2187d998dcc98d2b339dcb80c99ef59bccefad0eea6e61284", - registry = "gcr.io", - repository = "envoy-ci/envoy-build-windows", - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_generate_no_java", - bazel_version = _ubuntu1604_bazel, - create_java_configs = False, - create_testdata = True, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_generate_no_cc", - bazel_version = _ubuntu1604_bazel, - create_cc_configs = False, - create_testdata = True, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_config_repos", - bazel_version = _ubuntu1604_bazel, - config_repos = ["local_config_sh"], - create_testdata = True, -) - -rbe_autoconfig( - name = "rbe_autoconf_config_repos_no_cc_config", - bazel_version = _ubuntu1604_bazel, - config_repos = ["local_config_sh"], - create_cc_configs = False, - create_testdata = True, -) - -rbe_autoconfig( - name = "rbe_autoconf_custom_java_home", - bazel_version = _ubuntu1604_bazel, - create_cc_configs = False, - create_testdata = True, - java_home = "test-case-java-home", - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_detect_java_home", - bazel_version = _ubuntu1604_bazel, - create_cc_configs = False, - create_testdata = True, - detect_java_home = True, -) - -rbe_autoconfig( - name = "rbe_autoconf_old_container", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - digest = "sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c", - registry = _ubuntu1604_registry, - repository = _ubuntu1604_repository, -) - -rbe_autoconfig( - name = "rbe_autoconf_custom_container", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - digest = "sha256:eb9f72ddde60080912fed8a6f40c5a42c13ec6c890c0709c119213b199804456", - env = clang_env(), - registry = "l.gcr.io", - repository = "google/clang-debian9", -) - -rbe_autoconfig( - name = "rbe_autoconf_custom_env", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - env = { - "ABI_LIBC_VERSION": "test_abi_libc_version_test", - "ABI_VERSION": "test_abi_version_test", - "BAZEL_COMPILER": "clang++", - "BAZEL_HOST_SYSTEM": "test_bazel_host_system_test", - "BAZEL_TARGET_CPU": "test_bazel_target_cpu_test", - "BAZEL_TARGET_LIBC": "test_bazel_target_libc_test", - "BAZEL_TARGET_SYSTEM": "test_bazel_target_system_test", - "CC": "clang++", - "CC_TOOLCHAIN_NAME": "test_cc_toolchain_name_test", - }, -) - -rbe_autoconfig( - name = "rbe_autoconf_base_container_digest", - base_container_digest = "sha256:b4dad0bfc4951d619229ab15343a311f2415a16ef83bcaa55b44f4e2bf1cf635", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - digest = "sha256:b28ddaf98c6e0bb840c5fded3c0a899a7db45bb44f69859f16c37be092bfcb4e", - env = clang_env(), - registry = "marketplace.gcr.io", - repository = "google/bazel", - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_constraints", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - exec_compatible_with = [ - "//constraints:support_docker", - ], - target_compatible_with = [ - "//constraints:xenial", - ], - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_resovle_tag", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - registry = "marketplace.gcr.io", - repository = "google/bazel", - tag = "0.23.2", -) - -rbe_autoconfig( - name = "rbe_autoconf_output_base", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - export_configs = True, - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_output_base", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": rbe_default_repo()["toolchain_config_suite_autogen_spec"], - }, - use_checked_in_confs = "False", -) - -load( - "//tests/rbe_repo:versions.bzl", - gcb_test_toolchain_config_suite_autogen_spec = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) - -rbe_autoconfig( - name = "rbe_autoconf_output_base_windows", - bazel_version = "3.1.0", - create_java_configs = False, - create_testdata = True, - digest = "sha256:776f241c2693f3f2187d998dcc98d2b339dcb80c99ef59bccefad0eea6e61284", - export_configs = True, - registry = "gcr.io", - repository = "envoy-ci/envoy-build-windows", - toolchain_config_spec_name = "test_config_dir", - toolchain_config_suite_spec = { - "container_registry": "gcr.io", - "container_repo": "envoy-ci/envoy-build-windows", - "output_base": "rbe-test-output/config/rbe_autoconf_output_base_windows", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": gcb_test_toolchain_config_suite_autogen_spec, - }, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_output_base_no_java", - bazel_version = _ubuntu1604_bazel, - create_java_configs = False, - create_testdata = True, - export_configs = True, - toolchain_config_spec_name = "rbe_autoconf_output_base_no_java", - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_output_base_no_java", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": rbe_default_repo()["toolchain_config_suite_autogen_spec"], - }, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_output_base_no_cc", - bazel_version = _ubuntu1604_bazel, - create_cc_configs = False, - create_testdata = True, - export_configs = True, - toolchain_config_spec_name = "rbe_autoconf_output_base_no_cc", - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_output_base_no_cc", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": rbe_default_repo()["toolchain_config_suite_autogen_spec"], - }, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_config_repos_output_base", - bazel_version = _ubuntu1604_bazel, - config_repos = [ - "local_config_sh", - ], - create_testdata = True, - export_configs = True, - toolchain_config_spec_name = "rbe_autoconf_config_repos_output_base", - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_config_repos_output_base", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": rbe_default_repo()["toolchain_config_suite_autogen_spec"], - }, - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_autoconf_output_base_config_dir", - bazel_version = _ubuntu1604_bazel, - create_testdata = True, - export_configs = True, - toolchain_config_spec_name = "test_config_dir", - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_output_base", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": rbe_default_repo()["toolchain_config_suite_autogen_spec"], - }, - use_checked_in_confs = "False", -) - -# Test to validate no docker image is pulled when a custom container -# is used where no cc_configs are needed and java_home is passed -# explicitly. -rbe_autoconfig( - name = "rbe_autoconf_generate_no_docker_pull", - bazel_version = _ubuntu1604_bazel, - create_cc_configs = False, - create_testdata = True, - digest = "sha256:ab88c40463d782acc4289948fe0b1577de0b143a753cea35cac34535203f8ca7", - env = clang_env(), - java_home = "test-case-java-home", - registry = "gcr.io", - repository = "asci-toolchain/nosla-ubuntu16_04-bazel-docker-gcloud", -) - -load( - "//tests/rbe_repo:versions_test.bzl", - test_toolchain_config_suite_autogen_spec = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) - -rbe_autoconfig( - name = "rbe_autoconf_custom_toolchain_config_suite_spec", - bazel_version = "0.26.0", - create_testdata = True, - toolchain_config_spec_name = "testConfigSpecName1", - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_custom_toolchain_config_suite_spec", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": test_toolchain_config_suite_autogen_spec, - }, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_export", - create_testdata = True, - export_configs = True, - toolchain_config_spec_name = "test_config_dir", - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_custom_toolchain_config_suite_spec_export", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": test_toolchain_config_suite_autogen_spec, - }, -) - -load( - "//tests/rbe_repo:blank_versions_test.bzl", - blank_toolchain_config_suite_autogen_spec = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) - -rbe_autoconfig( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions", - create_testdata = True, - export_configs = True, - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "rbe-test-output/config/rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": blank_toolchain_config_suite_autogen_spec, - }, -) - -# This repo should only be used for GCB tests. -# It relies on location of //tests/rbe_repo:blank_versions_test.bzl -# and output_base in toolchain_config_suite_spec to match so that 1st build -# should create configs, and subsequent ones should reuse them -# (even when bazel cache is not maintained from one step to the next) -rbe_autoconfig( - name = "rbe_autoconf_gcb_test", - create_testdata = True, - export_configs = True, - toolchain_config_suite_spec = { - "container_registry": rbe_default_repo()["container_registry"], - "container_repo": rbe_default_repo()["container_repo"], - "output_base": "tests/rbe_repo", - "repo_name": rbe_default_repo()["repo_name"], - "toolchain_config_suite_autogen_spec": gcb_test_toolchain_config_suite_autogen_spec, - }, -) - -# Needed for testing purposes. Creates a file that exposes -# the value of RBE_AUTOCONF_ROOT -rbe_autoconfig_root(name = "rbe_autoconfig_root") - -# Define several exec property repo rules to be used in testing. -load("//rules/exec_properties:exec_properties.bzl", "create_rbe_exec_properties_dict", "custom_exec_properties", "rbe_exec_properties") - -# A standard RBE execution property set repo rule. -rbe_exec_properties( - name = "exec_properties", -) - -# A standard RBE execution property set repo rule whose NETWORK_ON has been overridden by "network off". -rbe_exec_properties( - name = "exec_properties_with_override", - override_constants = { - "NETWORK_ON": create_rbe_exec_properties_dict(docker_network = "off"), - }, -) - -# A custom execution property set repo rule defining its own name for the network on property set. -custom_exec_properties( - name = "network_on_exec_properties", - constants = { - "BESPOKE_NETWORK_ON": create_rbe_exec_properties_dict(docker_network = "standard"), - }, -) - -load( - "@exec_properties//:constants.bzl", - "DOCKER_PRIVILEGED", - "DOCKER_SIBLINGS_CONTAINERS", - "NETWORK_ON", -) - -# Same as @rbe_default_exec_properties execept that the exec properties also include DOCKER_PRIVILEGED. -rbe_autoconfig( - name = "rbe_default_with_docker_priveleged", - exec_properties = DOCKER_PRIVILEGED, - use_legacy_platform_definition = False, -) - -load("@bazel_skylib//lib:dicts.bzl", "dicts") - -# Use in the BazelCI. -rbe_autoconfig( - name = "buildkite_config", - base_container_digest = "sha256:4bfd33aa9ce73e28718385b8c01608a79bc6546906f01cf9329311cace1766a1", - digest = "sha256:c20046852a2d7910c55d76e0ec9c182b37532a9f0360d22dd5c9a1451b7c3a15", - exec_properties = dicts.add(DOCKER_SIBLINGS_CONTAINERS, NETWORK_ON), - registry = "marketplace.gcr.io", - repository = "google/bazel", - use_legacy_platform_definition = False, -) diff --git a/bazel_tests_cloudbuild.yaml b/bazel_tests_cloudbuild.yaml deleted file mode 100644 index 44108a667..000000000 --- a/bazel_tests_cloudbuild.yaml +++ /dev/null @@ -1,23 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_default -# target with multiple versions of Bazel. -# Their purpose is to verify the checked in configs are usable on RBE -# with several older versions of Bazel - -# Proper functioning of these test requires the _BAZEL_VERSION -# substitution parameter to be set in the trigger -# with name "config: /bazel_tests_cloudbuild.yaml {_BAZEL_VERSION}" -# in https://pantheon.corp.google.com/cloud-build/triggers?project=asci-toolchain. -# _BAZEL_VERSION should point to a version of Bazel to verify with these. - -steps: -# Test that runs with rbe_autoconfig with Bazel ${_BAZEL_VERSION} -# This test can only run with Bazel versions that have x.x.0 format -# as we only maintain bazelrc files for these. -- name: 'l.gcr.io/google/bazel:${_BAZEL_VERSION}' - args: - - --bazelrc=../../../../bazelrc/bazel-${_BAZEL_VERSION}.bazelrc - - test - - //:say_hello_test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/cloudbuild.yaml b/cloudbuild.yaml deleted file mode 100644 index 0d3331386..000000000 --- a/cloudbuild.yaml +++ /dev/null @@ -1,47 +0,0 @@ -# Generate Bazel C++ & Java toolchain configs for the latest available Bazel version & Ubuntu 16.04 -# based RBE toolchain container (l.gcr.io/google/rbe-ubuntu16-04:latest) and upload the generated -# configs to GCS. -steps: -# Build the RBE Config generator & uploader using Go 1.15. -- name: golang:1.15 - args: - - go - - build - - -o - - rbe_configs_gen - - github.com/bazelbuild/bazel-toolchains/cmd/rbe_configs_gen -- name: golang:1.15 - args: - - go - - build - - -o - - rbe_configs_upload - - github.com/bazelbuild/bazel-toolchains/cmd/rbe_configs_upload - -# Run the configs generator in the GCB docker builder because the config generator will launch a -# docker container to generate C++ configs. -- name: gcr.io/cloud-builders/docker - entrypoint: ./rbe_configs_gen - # We don't specify a Bazel version which should make the tool generate configs for the latest - # available Bazel release. - args: - # Latest available RBE Toolchain docker image. - - --toolchain_container=l.gcr.io/google/rbe-ubuntu16-04:latest - - --exec_os=linux - - --target_os=linux - - --output_tarball=rbe_default.tar - - --output_manifest=manifest.json - -# Publish the generated configs to GCS. The configs are *always* published, regardless of whether -# the contents of the configs tarball have changed. The manifest always includes an update because -# it includes the upload timestamp. See the docs at the top of rbe_configs_upload.go for details on -# where configs are uploaded on GCS. -# -# This step doesn't need docker but just picking the same container as above. -- name: gcr.io/cloud-builders/docker - entrypoint: ./rbe_configs_upload - args: - - --configs_tarball=rbe_default.tar - - --configs_manifest=manifest.json - - diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.2/BUILD b/configs/debian8_clang/0.1.0/bazel_0.5.2/BUILD deleted file mode 100755 index 54648bd97..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.2/BUILD +++ /dev/null @@ -1,92 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.2/CROSSTOOL b/configs/debian8_clang/0.1.0/bazel_0.5.2/CROSSTOOL deleted file mode 100755 index c81e2ea59..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.2/CROSSTOOL +++ /dev/null @@ -1,919 +0,0 @@ -# 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_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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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/5.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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: "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: false - 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: "/DOS_WINDOWS=OS_WINDOWS" - compiler_flag: "/DCOMPILER_MSVC" - - # Don't pollute with GDI macros in windows.h. - compiler_flag: "/DNOGDI" - # Don't define min/max macros in windows.h. - compiler_flag: "/DNOMINMAX" - compiler_flag: "/DPRAGMA_SUPPORTED" - # 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" - # Use math constants (M_PI, etc.) from the math library - compiler_flag: "/D_USE_MATH_DEFINES" - - # 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" - - linker_flag: "/SUBSYSTEM:CONSOLE" - - # 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" - } - } - } - - 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: "" - } - } - } - - 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: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-header-preprocessing' - action: 'c++-module-compile' - flag_group { - flag: '/I%{quote_include_paths}' - } - flag_group { - flag: '/I%{include_paths}' - } - flag_group { - flag: '/I%{system_include_paths}' - } - } - } - - # Stop adding any flag for dotD file, Bazel knows how to parse the output of /showIncludes option - # TODO(bazel-team): Remove this empty feature. https://github.com/bazelbuild/bazel/issues/2868 - feature { - name: 'dependency_file' - } - - # Tell Bazel to parse the output of /showIncludes - feature { - name: 'parse_showincludes' - flag_set { - action: 'assemble' - 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" - } - } - } - - # Stop passing -frandom-seed option - feature { - name: 'random_seed' - } - - # 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' - } - - 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: 'nologo' - implies: 'msvc_env' - implies: 'parse_showincludes' - } - - 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: 'nologo' - implies: 'msvc_env' - implies: 'parse_showincludes' - } - - 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_param_file' - implies: 'msvc_env' - implies: 'use_linker' - } - - 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: 'has_configured_linker_path' - implies: 'legacy_link_flags' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'use_linker' - } - - 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' - } - - feature { - name: 'generate_pdb_file' - requires: { - feature: 'dbg' - } - requires: { - feature: 'fastbuild' - } - } - - feature { - name: 'has_configured_linker_path' - } - - 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 { - 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: 'library_search_directories' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - iterate_over: 'library_search_directories' - flag: "-L%{library_search_directories}" - } - } - flag_set { - expand_if_all_available: 'libopts' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - 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}' - } - } - } - } - } - - 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 { - 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: 'link_crt_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MT, set USE_DYNAMIC_CRT=1 to change it to /MD - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmt.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrt.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'link_crt_debug_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MTd, set USE_DYNAMIC_CRT=1 to change it to /MDd - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmtd.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrtd.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'dbg' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - # This will signal the wrapper that we are doing a debug build, which sets - # some internal state of the toolchain wrapper. It is intentionally a "-" - # flag to make this very obvious. - flag: "-g" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FULL" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_debug_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'fastbuild' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FASTLINK" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" - } - } - implies: 'link_crt_library' - } - - - -} diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.2/METADATA b/configs/debian8_clang/0.1.0/bazel_0.5.2/METADATA deleted file mode 100644 index 1d7561969..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.2/METADATA +++ /dev/null @@ -1 +0,0 @@ -sha_of_source_toolchain=00cbf1eeac8c315c8b84bf179d15041a46b9e9173f75615fb756f3d37591d4e5 diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.2/cc_wrapper.sh b/configs/debian8_clang/0.1.0/bazel_0.5.2/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.2/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.4/BUILD b/configs/debian8_clang/0.1.0/bazel_0.5.4/BUILD deleted file mode 100755 index 54648bd97..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.4/BUILD +++ /dev/null @@ -1,92 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.4/CROSSTOOL b/configs/debian8_clang/0.1.0/bazel_0.5.4/CROSSTOOL deleted file mode 100755 index 4423b4326..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.4/CROSSTOOL +++ /dev/null @@ -1,945 +0,0 @@ -# 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_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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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/5.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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: "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: false - 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" - } - } - } - - 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: '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}' - } - } - } - - # Tell Bazel to parse the output of /showIncludes - feature { - name: 'parse_showincludes' - flag_set { - action: 'assemble' - 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" - } - } - } - - # 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: "preprocessor_defines" - 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: "/D%{preprocessor_defines}" - iterate_over: "preprocessor_defines" - } - } - } - - 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: 'nologo' - implies: 'msvc_env' - implies: 'parse_showincludes' - } - - 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: 'nologo' - implies: 'msvc_env' - implies: 'parse_showincludes' - } - - 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' - } - - 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' - } - - 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' - } - - 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: 'library_search_directories' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - iterate_over: 'library_search_directories' - flag: "-L%{library_search_directories}" - } - } - 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: 'link_crt_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MT, set USE_DYNAMIC_CRT=1 to change it to /MD - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmt.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrt.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'link_crt_debug_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MTd, set USE_DYNAMIC_CRT=1 to change it to /MDd - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmtd.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrtd.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'dbg' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FULL" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_debug_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'fastbuild' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FASTLINK" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" - } - } - implies: 'link_crt_library' - } - - - -} diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.4/METADATA b/configs/debian8_clang/0.1.0/bazel_0.5.4/METADATA deleted file mode 100644 index 3d2e8e59e..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.4/METADATA +++ /dev/null @@ -1 +0,0 @@ -sha_of_source_toolchain=2bfcc8eb01c7b42bbc8d901a10d3229c0737a99d239fbd7a5afaa23243eca39d diff --git a/configs/debian8_clang/0.1.0/bazel_0.5.4/cc_wrapper.sh b/configs/debian8_clang/0.1.0/bazel_0.5.4/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.5.4/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.1.0/bazel_0.6.0/BUILD b/configs/debian8_clang/0.1.0/bazel_0.6.0/BUILD deleted file mode 100755 index 1ce4fb588..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.6.0/BUILD +++ /dev/null @@ -1,107 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.1.0/bazel_0.6.0/CROSSTOOL b/configs/debian8_clang/0.1.0/bazel_0.6.0/CROSSTOOL deleted file mode 100755 index 5aae5f247..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.6.0/CROSSTOOL +++ /dev/null @@ -1,1042 +0,0 @@ -# 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_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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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/5.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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: "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: false - 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' - } - - # This feature indicates strip is not supported, building stripped binary will just result a copy of orignial binary - feature { - name: 'no_stripping' - } - - 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' - } - - 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: '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' - 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: '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: "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: 'assemble' - 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: 'library_search_directories' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - iterate_over: 'library_search_directories' - flag: "-L%{library_search_directories}" - } - } - 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: 'link_crt_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MT, set USE_DYNAMIC_CRT=1 to change it to /MD - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmt.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrt.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'link_crt_debug_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MTd, set USE_DYNAMIC_CRT=1 to change it to /MDd - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmtd.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrtd.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'dbg' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FULL" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_debug_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'fastbuild' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FASTLINK" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" - } - } - implies: 'link_crt_library' - } - - feature { - name: 'user_compile_flags' - flag_set { - expand_if_all_available: 'user_compile_flags' - 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' - 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: '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' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - - - -} diff --git a/configs/debian8_clang/0.1.0/bazel_0.6.0/METADATA b/configs/debian8_clang/0.1.0/bazel_0.6.0/METADATA deleted file mode 100644 index 9a9aa645d..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.6.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -sha_of_source_toolchain=525b809447b1a13ea99574518cdf5ef015f5de21d39e905f31ba39b2c82a6ae8 diff --git a/configs/debian8_clang/0.1.0/bazel_0.6.0/cc_wrapper.sh b/configs/debian8_clang/0.1.0/bazel_0.6.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.6.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.1.0/bazel_0.6.0/dummy_toolchain.bzl b/configs/debian8_clang/0.1.0/bazel_0.6.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.1.0/bazel_0.6.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.2.0/BUILD b/configs/debian8_clang/0.2.0/BUILD deleted file mode 100644 index 66a5d841f..000000000 --- a/configs/debian8_clang/0.2.0/BUILD +++ /dev/null @@ -1,26 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime_suite( - name = "jdk8", - default = ":jdk8-default", -) - -java_runtime( - name = "jdk8-default", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/debian8_clang/0.2.0/bazel_0.10.0/BUILD b/configs/debian8_clang/0.2.0/bazel_0.10.0/BUILD deleted file mode 100755 index b0883ac29..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.10.0/BUILD +++ /dev/null @@ -1,118 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.2.0/bazel_0.10.0/CROSSTOOL b/configs/debian8_clang/0.2.0/bazel_0.10.0/CROSSTOOL deleted file mode 100755 index d553789e1..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.10.0/CROSSTOOL +++ /dev/null @@ -1,1180 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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: "" - 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: "" - 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 } - - - -} diff --git a/configs/debian8_clang/0.2.0/bazel_0.10.0/METADATA b/configs/debian8_clang/0.2.0/bazel_0.10.0/METADATA deleted file mode 100644 index 12bc358d8..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.10.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e57978199c9eb156bd7f63773387f3a238adf61acd71c4942ad91da50b4f241f diff --git a/configs/debian8_clang/0.2.0/bazel_0.10.0/cc_wrapper.sh b/configs/debian8_clang/0.2.0/bazel_0.10.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.10.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.2.0/bazel_0.10.0/dummy_toolchain.bzl b/configs/debian8_clang/0.2.0/bazel_0.10.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.10.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.2.0/bazel_0.6.0/BUILD b/configs/debian8_clang/0.2.0/bazel_0.6.0/BUILD deleted file mode 100755 index 1ce4fb588..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.6.0/BUILD +++ /dev/null @@ -1,107 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.2.0/bazel_0.6.0/CROSSTOOL b/configs/debian8_clang/0.2.0/bazel_0.6.0/CROSSTOOL deleted file mode 100755 index 80a96c278..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.6.0/CROSSTOOL +++ /dev/null @@ -1,1042 +0,0 @@ -# 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_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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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: "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: false - 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' - } - - # This feature indicates strip is not supported, building stripped binary will just result a copy of orignial binary - feature { - name: 'no_stripping' - } - - 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' - } - - 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: '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' - 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: '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: "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: 'assemble' - 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: 'library_search_directories' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - iterate_over: 'library_search_directories' - flag: "-L%{library_search_directories}" - } - } - 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: 'link_crt_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MT, set USE_DYNAMIC_CRT=1 to change it to /MD - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmt.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrt.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'link_crt_debug_library' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - # The flag is filled by cc_configure. - # The default option is /MTd, set USE_DYNAMIC_CRT=1 to change it to /MDd - flag: "" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - # The flag is filled by cc_configure. - # The default value is libcmtd.lib, set USE_DYNAMIC_CRT=1 to change it to msvcrtd.lib - flag: "/DEFAULTLIB:" - } - } - } - - feature { - name: 'dbg' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FULL" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_debug_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'fastbuild' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/Od" - flag: "/Z7" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - flag_group { - flag: "/DEBUG:FASTLINK" - flag: "/INCREMENTAL:NO" - } - } - implies: 'link_crt_library' - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" - } - } - implies: 'link_crt_library' - } - - feature { - name: 'user_compile_flags' - flag_set { - expand_if_all_available: 'user_compile_flags' - 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' - 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: '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' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - - - -} diff --git a/configs/debian8_clang/0.2.0/bazel_0.6.0/METADATA b/configs/debian8_clang/0.2.0/bazel_0.6.0/METADATA deleted file mode 100644 index 4f7ea865c..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.6.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -sha_of_source_toolchain=0945e882b51e3f9dc1d8944a49f361573ef8e522588eb94263f8e6e094453435 diff --git a/configs/debian8_clang/0.2.0/bazel_0.6.0/cc_wrapper.sh b/configs/debian8_clang/0.2.0/bazel_0.6.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.6.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.2.0/bazel_0.6.0/dummy_toolchain.bzl b/configs/debian8_clang/0.2.0/bazel_0.6.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.6.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.2.0/bazel_0.7.0/BUILD b/configs/debian8_clang/0.2.0/bazel_0.7.0/BUILD deleted file mode 100755 index 7c73a9a9c..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.7.0/BUILD +++ /dev/null @@ -1,107 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -filegroup(name = "toolchain_category") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_category", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.2.0/bazel_0.7.0/CROSSTOOL b/configs/debian8_clang/0.2.0/bazel_0.7.0/CROSSTOOL deleted file mode 100755 index 391f6c889..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.7.0/CROSSTOOL +++ /dev/null @@ -1,1113 +0,0 @@ -# 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_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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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: "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: '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' - } - - 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: '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' - 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: '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: "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: 'assemble' - 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_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_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" - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - expand_if_all_available: 'user_compile_flags' - 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' - 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: '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' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'windows_export_all_symbols' - 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: 'no_windows_export_all_symbols' - } - - linking_mode_flags { mode: DYNAMIC } - - - -} diff --git a/configs/debian8_clang/0.2.0/bazel_0.7.0/METADATA b/configs/debian8_clang/0.2.0/bazel_0.7.0/METADATA deleted file mode 100644 index 4f7ea865c..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.7.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -sha_of_source_toolchain=0945e882b51e3f9dc1d8944a49f361573ef8e522588eb94263f8e6e094453435 diff --git a/configs/debian8_clang/0.2.0/bazel_0.7.0/cc_wrapper.sh b/configs/debian8_clang/0.2.0/bazel_0.7.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.7.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.2.0/bazel_0.7.0/dummy_toolchain.bzl b/configs/debian8_clang/0.2.0/bazel_0.7.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.7.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.2.0/bazel_0.8.0/BUILD b/configs/debian8_clang/0.2.0/bazel_0.8.0/BUILD deleted file mode 100755 index 7c73a9a9c..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.8.0/BUILD +++ /dev/null @@ -1,107 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -filegroup(name = "toolchain_category") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_category", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.2.0/bazel_0.8.0/CROSSTOOL b/configs/debian8_clang/0.2.0/bazel_0.8.0/CROSSTOOL deleted file mode 100755 index b5d5c7d1b..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.8.0/CROSSTOOL +++ /dev/null @@ -1,1118 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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: "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: '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' - } - - 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: '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' - 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: '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: "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: 'assemble' - 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_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_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" - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - expand_if_all_available: 'user_compile_flags' - 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' - 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: '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' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'windows_export_all_symbols' - 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: 'no_windows_export_all_symbols' - } - - linking_mode_flags { mode: DYNAMIC } - - - -} diff --git a/configs/debian8_clang/0.2.0/bazel_0.8.0/METADATA b/configs/debian8_clang/0.2.0/bazel_0.8.0/METADATA deleted file mode 100644 index 246921ab9..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.8.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0945e882b51e3f9dc1d8944a49f361573ef8e522588eb94263f8e6e094453435 diff --git a/configs/debian8_clang/0.2.0/bazel_0.8.0/cc_wrapper.sh b/configs/debian8_clang/0.2.0/bazel_0.8.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.8.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.2.0/bazel_0.8.0/dummy_toolchain.bzl b/configs/debian8_clang/0.2.0/bazel_0.8.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.8.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.2.0/bazel_0.9.0/BUILD b/configs/debian8_clang/0.2.0/bazel_0.9.0/BUILD deleted file mode 100755 index 369b0b7f9..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.9.0/BUILD +++ /dev/null @@ -1,115 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -filegroup(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -filegroup(name = "toolchain_category") - -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_category", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.2.0/bazel_0.9.0/CROSSTOOL b/configs/debian8_clang/0.2.0/bazel_0.9.0/CROSSTOOL deleted file mode 100755 index c2c6024ad..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.9.0/CROSSTOOL +++ /dev/null @@ -1,1148 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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 } - - - -} diff --git a/configs/debian8_clang/0.2.0/bazel_0.9.0/METADATA b/configs/debian8_clang/0.2.0/bazel_0.9.0/METADATA deleted file mode 100644 index f253f897c..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.9.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:62ad7c44890792fdb2c2593fc24cfab7132e3a112d55bd453e09387906ae5e2f diff --git a/configs/debian8_clang/0.2.0/bazel_0.9.0/cc_wrapper.sh b/configs/debian8_clang/0.2.0/bazel_0.9.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.9.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.2.0/bazel_0.9.0/dummy_toolchain.bzl b/configs/debian8_clang/0.2.0/bazel_0.9.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.2.0/bazel_0.9.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.2.0/toolchain.bazelrc b/configs/debian8_clang/0.2.0/toolchain.bazelrc deleted file mode 100644 index e9746f069..000000000 --- a/configs/debian8_clang/0.2.0/toolchain.bazelrc +++ /dev/null @@ -1,5 +0,0 @@ -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//configs/debian8_clang/0.2.0:jdk8 -build:remote --javabase=@bazel_toolchains//configs/debian8_clang/0.2.0:jdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/debian8_clang/0.2.0/bazel_0.10.0:toolchain -build:remote --experimental_remote_platform_override='properties:{ name:"container-image" value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:496193842f61c9494be68bd624e47c74d706cabf19a693c4653ffe96a97e43e3" }' diff --git a/configs/debian8_clang/0.3.0/BUILD b/configs/debian8_clang/0.3.0/BUILD deleted file mode 100644 index ee0ff0344..000000000 --- a/configs/debian8_clang/0.3.0/BUILD +++ /dev/null @@ -1,135 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk8", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) - -java_runtime( - name = "jdk10", - srcs = [], - java_home = "/usr/lib/jvm/zulu10.2+3-jdk10.0.1-linux_x64-allmodules", -) - -# Update every time when a new container is available publically. -LATEST_CLANG_VERSION = "r337145" - -# Latest RBE Debian8 container with JDK10 -alias( - name = "rbe_debian8_jdk10", - actual = ":rbe_debian8_" + LATEST_CLANG_VERSION + "_jdk10", -) - -# Latest RBE Debian8 container with JDK8 -alias( - name = "rbe_debian8_jdk8", - actual = ":rbe_debian8_" + LATEST_CLANG_VERSION + "_jdk8", -) - -# Latest RBE Debian8 container -alias( - name = "rbe_debian8", - actual = ":rbe_debian8_" + LATEST_CLANG_VERSION, -) - -# We use an additional remote_execution_propertie called "jdk-version" to -# to collect usage of JDK8 and JDK10. - -# ======================== RBE Debian8 r337145 targets ======================== - -# RBE Debian8 r337145 with JDK 10 -platform( - name = "rbe_debian8_r337145_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:46c4fd30ed413f16a8be697833f7c07997c61997c0dceda651e9167068ca2cd3" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Debian8 r337145 with JDK 8 -platform( - name = "rbe_debian8_r337145_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:46c4fd30ed413f16a8be697833f7c07997c61997c0dceda651e9167068ca2cd3" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Debian8 r337145 -platform( - name = "rbe_debian8_r337145", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:46c4fd30ed413f16a8be697833f7c07997c61997c0dceda651e9167068ca2cd3" - } - """, -) - -# ======================== RBE Debian8 r328903 targets ======================== - -# RBE Debian8 r328903 -platform( - name = "rbe_debian8_r328903", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:0d5db936f8fa04638ca31e4fc117415068dca43dc343d605c0db2a15f433a327" - } - """, -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.10.0/BUILD b/configs/debian8_clang/0.3.0/bazel_0.10.0/BUILD deleted file mode 100755 index b0883ac29..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.10.0/BUILD +++ /dev/null @@ -1,118 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.3.0/bazel_0.10.0/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.10.0/CROSSTOOL deleted file mode 100755 index 822c0e45c..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.10.0/CROSSTOOL +++ /dev/null @@ -1,1180 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - 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" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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: "" - 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: "" - 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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.10.0/METADATA b/configs/debian8_clang/0.3.0/bazel_0.10.0/METADATA deleted file mode 100644 index d1cdb4ef8..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.10.0/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:ac3b1fdc22c0f2b95abe67f2daf33788425fab52d4e6845900bfe1a42443098f diff --git a/configs/debian8_clang/0.3.0/bazel_0.10.0/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.10.0/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.10.0/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.10.0/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.10.0/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.10.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/BUILD b/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/BUILD deleted file mode 100755 index 596caba13..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/BUILD +++ /dev/null @@ -1,112 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/CROSSTOOL deleted file mode 100755 index bea82331a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/CROSSTOOL +++ /dev/null @@ -1,1217 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-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" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/METADATA b/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/METADATA deleted file mode 100644 index d1cdb4ef8..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:ac3b1fdc22c0f2b95abe67f2daf33788425fab52d4e6845900bfe1a42443098f diff --git a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.11.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/BUILD b/configs/debian8_clang/0.3.0/bazel_0.12.0/default/BUILD deleted file mode 100755 index 596caba13..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/BUILD +++ /dev/null @@ -1,112 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.12.0/default/CROSSTOOL deleted file mode 100755 index 1a4898bae..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/CROSSTOOL +++ /dev/null @@ -1,1216 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-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" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/METADATA b/configs/debian8_clang/0.3.0/bazel_0.12.0/default/METADATA deleted file mode 100644 index 7618edbf6..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.12.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.12.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/BUILD b/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/BUILD deleted file mode 100755 index 596caba13..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/BUILD +++ /dev/null @@ -1,112 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/CROSSTOOL deleted file mode 100755 index bea82331a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/CROSSTOOL +++ /dev/null @@ -1,1217 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-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" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/METADATA b/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/METADATA deleted file mode 100644 index 7618edbf6..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.12.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/cpp/BUILD b/configs/debian8_clang/0.3.0/bazel_0.13.0/cpp/BUILD deleted file mode 100644 index d63f7e19e..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/cpp/BUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.13.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.13.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/BUILD b/configs/debian8_clang/0.3.0/bazel_0.13.0/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.13.0/default/CROSSTOOL deleted file mode 100755 index 3ddf09a88..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/CROSSTOOL +++ /dev/null @@ -1,1158 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '-lgcov' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/METADATA b/configs/debian8_clang/0.3.0/bazel_0.13.0/default/METADATA deleted file mode 100644 index 7618edbf6..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.13.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.13.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/BUILD b/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/CROSSTOOL deleted file mode 100755 index 8dd6f078d..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/CROSSTOOL +++ /dev/null @@ -1,1159 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '-lgcov' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/METADATA b/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/METADATA deleted file mode 100644 index 7618edbf6..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.13.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/cpp/BUILD b/configs/debian8_clang/0.3.0/bazel_0.14.1/cpp/BUILD deleted file mode 100644 index e90521d74..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/cpp/BUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.14.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.14.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/BUILD b/configs/debian8_clang/0.3.0/bazel_0.14.1/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.14.1/default/CROSSTOOL deleted file mode 100755 index 6c71c1db8..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/CROSSTOOL +++ /dev/null @@ -1,1155 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/METADATA b/configs/debian8_clang/0.3.0/bazel_0.14.1/default/METADATA deleted file mode 100644 index d28a277d5..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.14.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.14.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/BUILD b/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/CROSSTOOL deleted file mode 100755 index 17356f55d..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/CROSSTOOL +++ /dev/null @@ -1,1156 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/METADATA b/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/METADATA deleted file mode 100644 index d28a277d5..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.14.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/cpp/BUILD b/configs/debian8_clang/0.3.0/bazel_0.15.0/cpp/BUILD deleted file mode 100644 index 34a0ed67c..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/cpp/BUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.15.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.15.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/BUILD b/configs/debian8_clang/0.3.0/bazel_0.15.0/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.15.0/default/CROSSTOOL deleted file mode 100755 index f5a7a4ac0..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/CROSSTOOL +++ /dev/null @@ -1,1221 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - 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 { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - 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' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/METADATA b/configs/debian8_clang/0.3.0/bazel_0.15.0/default/METADATA deleted file mode 100644 index d28a277d5..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.15.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.15.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/BUILD b/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/CROSSTOOL deleted file mode 100755 index 27f32ae2d..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/CROSSTOOL +++ /dev/null @@ -1,1222 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - 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 { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - 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' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/METADATA b/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/METADATA deleted file mode 100644 index d28a277d5..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.15.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/cpp/BUILD b/configs/debian8_clang/0.3.0/bazel_0.16.1/cpp/BUILD deleted file mode 100644 index 591d1241a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.16.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.3.0/bazel_0.16.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/BUILD b/configs/debian8_clang/0.3.0/bazel_0.16.1/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.16.1/default/CROSSTOOL deleted file mode 100755 index f9677b679..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/METADATA b/configs/debian8_clang/0.3.0/bazel_0.16.1/default/METADATA deleted file mode 100644 index e9e5b23b5..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:de1116d36eafe16890afd64b6bc6809a3ed5b3597ed7bc857980749270894677 diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.16.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.16.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/BUILD b/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/CROSSTOOL b/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/CROSSTOOL deleted file mode 100755 index 1329afa7e..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/METADATA b/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/METADATA deleted file mode 100644 index e9e5b23b5..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:de1116d36eafe16890afd64b6bc6809a3ed5b3597ed7bc857980749270894677 diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/cc_wrapper.sh b/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.3.0/bazel_0.16.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.3.0/toolchain.bazelrc b/configs/debian8_clang/0.3.0/toolchain.bazelrc deleted file mode 100644 index 2a5688c4b..000000000 --- a/configs/debian8_clang/0.3.0/toolchain.bazelrc +++ /dev/null @@ -1,43 +0,0 @@ -# This file is auto-generated from release/toolchain.bazelrc.tpl and should not -# be modified directly. - -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//configs/debian8_clang/0.3.0:jdk8 -build:remote --javabase=@bazel_toolchains//configs/debian8_clang/0.3.0:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/debian8_clang/0.3.0/bazel_0.16.1/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//configs/debian8_clang/0.3.0/bazel_0.16.1/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//configs/debian8_clang/0.3.0:rbe_debian8 -build:remote --host_platform=@bazel_toolchains//configs/debian8_clang/0.3.0:rbe_debian8 -build:remote --platforms=@bazel_toolchains//configs/debian8_clang/0.3.0:rbe_debian8 - -# Experimental configs for sanitizers, use --config=remote --config=remote- (in that order) -# See https://github.com/bazelbuild/bazel/issues/5291. -build:remote-xxsan --copt=-gmlt -build:remote-xxsan --strip=never - -build:remote-asan --config=remote-xxsan -build:remote-asan --copt=-fsanitize=address -build:remote-asan --linkopt=-fsanitize=address - -build:remote-tsan --config=remote-xxsan -build:remote-tsan --copt=-fsanitize=thread -build:remote-tsan --linkopt=-fsanitize=thread - -build:remote-msan --config=remote-xxsan -build:remote-msan --copt=-fsanitize=memory -build:remote-msan --linkopt=-fsanitize=memory -build:remote-msan --cxxopt=--stdlib=libc++ -build:remote-msan --copt=-fsanitize-memory-track-origins -build:remote-msan --host_crosstool_top=@bazel_toolchains//configs/debian8_clang/0.3.0/bazel_0.16.1/default:toolchain -build:remote-msan --crosstool_top=@bazel_toolchains//configs/debian8_clang/0.3.0/bazel_0.16.1/msan:toolchain diff --git a/configs/debian8_clang/0.4.0/BUILD b/configs/debian8_clang/0.4.0/BUILD deleted file mode 100644 index 14d1b94e1..000000000 --- a/configs/debian8_clang/0.4.0/BUILD +++ /dev/null @@ -1,243 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk8", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) - -java_runtime( - name = "jdk10", - srcs = [], - java_home = "/usr/lib/jvm/zulu10.2+3-jdk10.0.1-linux_x64-allmodules", -) - -# Update every time when a new container is available publically. -LATEST_CLANG_VERSION = "r346485" - -# Latest RBE Debian8 container with JDK10 -alias( - name = "rbe_debian8_jdk10", - actual = ":rbe_debian8_" + LATEST_CLANG_VERSION + "_jdk10", -) - -# Latest RBE Debian8 container with JDK8 -alias( - name = "rbe_debian8_jdk8", - actual = ":rbe_debian8_" + LATEST_CLANG_VERSION + "_jdk8", -) - -# Latest RBE Debian8 container -alias( - name = "rbe_debian8", - actual = ":rbe_debian8_" + LATEST_CLANG_VERSION, -) - -# We use an additional remote_execution_propertie called "jdk-version" to -# to collect usage of JDK8 and JDK10. - -# ======================== RBE Debian8 r340178 targets ======================== - -# RBE Debian8 r340178 with JDK 10 -platform( - name = "rbe_debian8_r340178_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:75ba06b78aa99e58cfb705378c4e3d6f0116052779d00628ecb73cd35b5ea77d" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Debian8 r340178 with JDK 8 -platform( - name = "rbe_debian8_r340178_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:75ba06b78aa99e58cfb705378c4e3d6f0116052779d00628ecb73cd35b5ea77d" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Debian8 r340178 -platform( - name = "rbe_debian8_r340178", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:75ba06b78aa99e58cfb705378c4e3d6f0116052779d00628ecb73cd35b5ea77d" - } - """, -) - -# ======================== RBE Debian8 r342117 targets ======================== - -# RBE Debian8 r342117 with JDK 10 -platform( - name = "rbe_debian8_r342117_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:4893599fb00089edc8351d9c26b31d3f600774cb5addefb00c70fdb6ca797abf" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Debian8 r342117 with JDK 8 -platform( - name = "rbe_debian8_r342117_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:4893599fb00089edc8351d9c26b31d3f600774cb5addefb00c70fdb6ca797abf" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Debian8 r342117 -platform( - name = "rbe_debian8_r342117", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:4893599fb00089edc8351d9c26b31d3f600774cb5addefb00c70fdb6ca797abf" - } - """, -) - -# ======================== RBE Debian8 r346485 targets ======================== - -# RBE Debian8 r346485 with JDK 10 -platform( - name = "rbe_debian8_r346485_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:cda3a8608d0fc545dffc6c68f6cfab8eda280c7a1558bde0753ed2e8e3006224" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Debian8 r346485 with JDK 8 -platform( - name = "rbe_debian8_r346485_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:cda3a8608d0fc545dffc6c68f6cfab8eda280c7a1558bde0753ed2e8e3006224" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Debian8 r346485 -platform( - name = "rbe_debian8_r346485", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints/sanitizers:support_msan", - "//constraints:jessie", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-debian8@sha256:cda3a8608d0fc545dffc6c68f6cfab8eda280c7a1558bde0753ed2e8e3006224" - } - """, -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.16.1/cpp/BUILD deleted file mode 100644 index d10e45fb7..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.16.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.16.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.16.1/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.16.1/default/CROSSTOOL deleted file mode 100755 index 31c313ff1..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.16.1/default/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.16.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.16.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/CROSSTOOL deleted file mode 100755 index f30f0a4d9..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.16.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.17.1/cpp/BUILD deleted file mode 100644 index 12f11ecde..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.17.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.17.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.17.1/default/BUILD deleted file mode 100755 index 2217d8480..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/BUILD +++ /dev/null @@ -1,109 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.17.1/default/CROSSTOOL deleted file mode 100755 index 02fb64ea4..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/CROSSTOOL +++ /dev/null @@ -1,1246 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.17.1/default/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.17.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.17.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/BUILD deleted file mode 100755 index 2217d8480..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/BUILD +++ /dev/null @@ -1,109 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/CROSSTOOL deleted file mode 100755 index 55e07b079..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/CROSSTOOL +++ /dev/null @@ -1,1247 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.17.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.18.0/cpp/BUILD deleted file mode 100644 index a96ecebcf..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.18.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.18.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.18.0/default/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.18.0/default/CROSSTOOL deleted file mode 100755 index 02fb64ea4..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/CROSSTOOL +++ /dev/null @@ -1,1246 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.18.0/default/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.18.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.18.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/CROSSTOOL deleted file mode 100755 index 55e07b079..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/CROSSTOOL +++ /dev/null @@ -1,1247 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.18.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.19.0/cpp/BUILD deleted file mode 100644 index 9b3451c95..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.19.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.19.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.19.0/default/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.19.0/default/CROSSTOOL deleted file mode 100755 index 0007b2b09..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/CROSSTOOL +++ /dev/null @@ -1,1241 +0,0 @@ -# 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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.19.0/default/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.19.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.19.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/CROSSTOOL deleted file mode 100755 index 2bb3b8003..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/CROSSTOOL +++ /dev/null @@ -1,1242 +0,0 @@ -# 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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.19.2/cpp/BUILD deleted file mode 100644 index 21eb84524..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.19.2/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.19.2/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.19.2/default/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.19.2/default/CROSSTOOL deleted file mode 100755 index c1e2710dd..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.19.2/default/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.19.2/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.19.2/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/CROSSTOOL deleted file mode 100755 index d67923ab4..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/CROSSTOOL +++ /dev/null @@ -1,1211 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/METADATA deleted file mode 100644 index e49f31b19..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.19.2/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.20.0/cpp/BUILD deleted file mode 100644 index c7fc94c3d..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.20.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.20.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.20.0/default/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.20.0/default/CROSSTOOL deleted file mode 100755 index 00ca8e251..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.20.0/default/METADATA deleted file mode 100644 index 1286d859a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.20.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.20.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/CROSSTOOL deleted file mode 100755 index 7e84605f3..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/METADATA deleted file mode 100644 index 1286d859a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.20.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.21.0/cpp/BUILD deleted file mode 100644 index 468915302..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.21.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.21.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.21.0/default/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.21.0/default/CROSSTOOL deleted file mode 100755 index 00ca8e251..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.21.0/default/METADATA deleted file mode 100644 index 1286d859a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.21.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.21.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/CROSSTOOL deleted file mode 100755 index 7e84605f3..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/METADATA deleted file mode 100644 index 1286d859a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.21.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/cpp/BUILD b/configs/debian8_clang/0.4.0/bazel_0.22.0/cpp/BUILD deleted file mode 100644 index abd96a69d..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.22.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:jessie", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/debian8_clang/0.4.0/bazel_0.22.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/BUILD b/configs/debian8_clang/0.4.0/bazel_0.22.0/default/BUILD deleted file mode 100755 index 4bb10b123..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.22.0/default/CROSSTOOL deleted file mode 100755 index 1e0b77804..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - expand_if_all_available: 'fdo_profile_path' - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are - # not used in this crosstool - feature { - name: 'legacy_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'legacy_compile_flags' - 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'linkstamp_paths' - iterate_over: 'linkstamp_paths' - flag: '%{linkstamp_paths}' - } - } - } - - feature { - name: 'output_execpath_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'archiver_flags' - flag_set { - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'input_param_flags' - flag_set { - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'interface_library_output_path' - flag: "/IMPLIB:%{interface_library_output_path}" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'libopts' - iterate_over: 'libopts' - flag: '%{libopts}' - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'libraries_to_link' - 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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'user_link_flags' - iterate_over: 'user_link_flags' - flag: '%{user_link_flags}' - } - } - } - feature { - name: 'legacy_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'legacy_link_flags' - iterate_over: 'legacy_link_flags' - flag: '%{legacy_link_flags}' - } - } - } - - feature { - name: 'linker_param_file' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'linker_param_file' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'user_compile_flags' - iterate_over: 'user_compile_flags' - flag: '%{user_compile_flags}' - } - } - } - - feature { - name: 'sysroot' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'sysroot' - iterate_over: 'sysroot' - flag: '--sysroot=%{sysroot}' - } - } - } - - feature { - name: 'unfiltered_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'unfiltered_compile_flags' - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'def_file_path' - 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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/METADATA b/configs/debian8_clang/0.4.0/bazel_0.22.0/default/METADATA deleted file mode 100644 index 1286d859a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.22.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.22.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/BUILD b/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/BUILD deleted file mode 100755 index 4bb10b123..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/CROSSTOOL b/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/CROSSTOOL deleted file mode 100755 index a4474196d..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - expand_if_all_available: 'fdo_profile_path' - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are - # not used in this crosstool - feature { - name: 'legacy_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'legacy_compile_flags' - 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'linkstamp_paths' - iterate_over: 'linkstamp_paths' - flag: '%{linkstamp_paths}' - } - } - } - - feature { - name: 'output_execpath_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'archiver_flags' - flag_set { - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'input_param_flags' - flag_set { - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'interface_library_output_path' - flag: "/IMPLIB:%{interface_library_output_path}" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'libopts' - iterate_over: 'libopts' - flag: '%{libopts}' - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'libraries_to_link' - 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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'user_link_flags' - iterate_over: 'user_link_flags' - flag: '%{user_link_flags}' - } - } - } - feature { - name: 'legacy_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'legacy_link_flags' - iterate_over: 'legacy_link_flags' - flag: '%{legacy_link_flags}' - } - } - } - - feature { - name: 'linker_param_file' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'linker_param_file' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'user_compile_flags' - iterate_over: 'user_compile_flags' - flag: '%{user_compile_flags}' - } - } - } - - feature { - name: 'sysroot' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'sysroot' - iterate_over: 'sysroot' - flag: '--sysroot=%{sysroot}' - } - } - } - - feature { - name: 'unfiltered_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'unfiltered_compile_flags' - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'def_file_path' - 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 } -} diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/METADATA b/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/METADATA deleted file mode 100644 index 1286d859a..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/cc_wrapper.sh b/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/dummy_toolchain.bzl b/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/debian8_clang/0.4.0/bazel_0.22.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/debian8_clang/0.4.0/toolchain.bazelrc b/configs/debian8_clang/0.4.0/toolchain.bazelrc deleted file mode 100644 index 6280b8fc1..000000000 --- a/configs/debian8_clang/0.4.0/toolchain.bazelrc +++ /dev/null @@ -1,43 +0,0 @@ -# This file is auto-generated from release/toolchain.bazelrc.tpl and should not -# be modified directly. - -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//configs/debian8_clang/0.4.0:jdk8 -build:remote --javabase=@bazel_toolchains//configs/debian8_clang/0.4.0:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/debian8_clang/0.4.0/bazel_0.22.0/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//configs/debian8_clang/0.4.0/bazel_0.22.0/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//configs/debian8_clang/0.4.0:rbe_debian8 -build:remote --host_platform=@bazel_toolchains//configs/debian8_clang/0.4.0:rbe_debian8 -build:remote --platforms=@bazel_toolchains//configs/debian8_clang/0.4.0:rbe_debian8 - -# Experimental configs for sanitizers, use --config=remote --config=remote- (in that order) -# See https://github.com/bazelbuild/bazel/issues/5291. -build:remote-xxsan --copt=-gmlt -build:remote-xxsan --strip=never - -build:remote-asan --config=remote-xxsan -build:remote-asan --copt=-fsanitize=address -build:remote-asan --linkopt=-fsanitize=address - -build:remote-tsan --config=remote-xxsan -build:remote-tsan --copt=-fsanitize=thread -build:remote-tsan --linkopt=-fsanitize=thread - -build:remote-msan --config=remote-xxsan -build:remote-msan --copt=-fsanitize=memory -build:remote-msan --linkopt=-fsanitize=memory -build:remote-msan --cxxopt=--stdlib=libc++ -build:remote-msan --copt=-fsanitize-memory-track-origins -build:remote-msan --host_crosstool_top=@bazel_toolchains//configs/debian8_clang/0.4.0/bazel_0.22.0/default:toolchain -build:remote-msan --crosstool_top=@bazel_toolchains//configs/debian8_clang/0.4.0/bazel_0.22.0/msan:toolchain diff --git a/configs/debian8_clang/BUILD b/configs/debian8_clang/BUILD deleted file mode 100644 index c2ba8078e..000000000 --- a/configs/debian8_clang/BUILD +++ /dev/null @@ -1,609 +0,0 @@ -# Copyright 2017 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. - -load("@bazel_skylib//lib:dicts.bzl", "dicts") -load("@bazel_toolchains//rules:docker_config.bzl", "docker_toolchain_autoconfig") -load( - "@bazel_toolchains//rules:environments.bzl", - "clang_env", - "debian8_clang_default_keys", - "debian8_clang_default_packages", - "debian8_clang_default_repos", -) - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# Created on 2017.10.18 -docker_toolchain_autoconfig( - name = "debian8-clang-0.2.0-bazel_0.7.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.7.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = False, -) - -# Created on 2017.11.28 -docker_toolchain_autoconfig( - name = "debian8-clang-0.2.0-bazel_0.8.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.8.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = False, -) - -# Created on 2018.01.10 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:62ad7c44890792fdb2c2593fc24cfab7132e3a112d55bd453e09387906ae5e2f -# Clang revision: r319946 -docker_toolchain_autoconfig( - name = "debian8-clang-0.2.0-bazel_0.9.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.9.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = False, -) - -# Created on 2018.02.05 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e57978199c9eb156bd7f63773387f3a238adf61acd71c4942ad91da50b4f241f -# Clang revision: r319946 -docker_toolchain_autoconfig( - name = "debian8-clang-0.2.0-bazel_0.10.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.10.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = False, -) - -# Created on 2018.02.13 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:ac3b1fdc22c0f2b95abe67f2daf33788425fab52d4e6845900bfe1a42443098f -# Clang revision: r322167 -docker_toolchain_autoconfig( - name = "debian8-clang-0.3.0-bazel_0.10.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.10.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.04.06 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:ac3b1fdc22c0f2b95abe67f2daf33788425fab52d4e6845900bfe1a42443098f -# Clang revision: r322167 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.3.0-bazel_0.11.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.11.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.04.23 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf -# Clang revision: r327695 -docker_toolchain_autoconfig( - name = "debian8-clang-0.3.0-bazel_0.12.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.12.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.04.23 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf -# Clang revision: r327695 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.3.0-bazel_0.12.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.12.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.04.30 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf -# Clang revision: r327695 -docker_toolchain_autoconfig( - name = "debian8-clang-0.3.0-bazel_0.13.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.13.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.04.30 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf -# Clang revision: r327695 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.3.0-bazel_0.13.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.13.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.06.08 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f -# Clang revision: r328903 -docker_toolchain_autoconfig( - name = "debian8-clang-0.3.0-bazel_0.14.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.14.1", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.06.08 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f -# Clang revision: r328903 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.3.0-bazel_0.14.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.14.1", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.06.27 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f -# Clang revision: r328903 -docker_toolchain_autoconfig( - name = "debian8-clang-0.3.0-bazel_0.15.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.15.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# Created on 2018.06.27 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:8bb65bf0a0da8be48bbac07ebe743805f3dc5259203e19517098162bd23a768f -# Clang revision: r328903 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.3.0-bazel_0.15.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.15.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.8.13 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:de1116d36eafe16890afd64b6bc6809a3ed5b3597ed7bc857980749270894677 -# Clang revision: r337145 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.3.0-bazel_0.16.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.16.1", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.8.13 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:de1116d36eafe16890afd64b6bc6809a3ed5b3597ed7bc857980749270894677 -# Clang revision: r337145 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.3.0-bazel_0.16.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.16.1", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.9.6 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r340178 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.16.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.16.1", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.9.6 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r340178 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.16.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.16.1", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.9.17 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r340178 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.17.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.17.1", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.9.17 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r340178 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.17.1-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.17.1", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.10.16 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r340178 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.18.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.18.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.10.16 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r340178 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.18.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.18.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.11.2 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r342117 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.19.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.19.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.11.2 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r342117 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.19.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.19.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.11.19 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r342117 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.19.2-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.19.2", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.11.19 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:0946899544c00537b2af06790e72ba86aa39b16e0e05aef8f53ed79d1f89f2a0 -# Clang revision: r342117 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.19.2-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.19.2", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.12.4 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 -# Clang revision: r346485 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.20.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.20.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.12.4 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 -# Clang revision: r346485 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.20.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.20.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2018.12.27 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 -# Clang revision: r346485 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.21.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.21.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2018.12.27 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 -# Clang revision: r346485 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.21.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.21.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on 2019.1.28 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 -# Clang revision: r346485 -docker_toolchain_autoconfig( - name = "default-debian8-clang-0.4.0-bazel_0.22.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.22.0", - env = clang_env(), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on 2019.1.28 -# Container: marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 -# Clang revision: r346485 -docker_toolchain_autoconfig( - name = "msan-debian8-clang-0.4.0-bazel_0.22.0-autoconfig", - additional_repos = debian8_clang_default_repos(), - base = "@debian8-clang//image", - bazel_version = "0.22.0", - env = dicts.add( - clang_env(), - { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }, - ), - keys = debian8_clang_default_keys(), - packages = debian8_clang_default_packages(), - tags = ["manual"], - test = True, -) diff --git a/configs/debian8_clang/README.md b/configs/debian8_clang/README.md deleted file mode 100644 index 2631fb2d9..000000000 --- a/configs/debian8_clang/README.md +++ /dev/null @@ -1,2 +0,0 @@ -This folder contains Bazel configuration artifacts for a debian8 based clang -toolchain. diff --git a/configs/debian8_clang/latest/BUILD b/configs/debian8_clang/latest/BUILD deleted file mode 100644 index 77cdfc812..000000000 --- a/configs/debian8_clang/latest/BUILD +++ /dev/null @@ -1,72 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This file is auto-generated from release/cc/latest.tpl and should not -# be modified directly. - -PACKAGE = "//configs/debian8_clang/" - -LATEST_CONFIG_VERSION = "0.4.0" - -LATEST_BAZEL_VERSION = "0.22.0" - -CONFIG_TYPES = [ - "default", - "msan", -] - -# DO NOT depend on the following latest alias in your production jobs. -# These are for internal and our CI use only. We DO NOT guarantee that they -# will always work. -[alias( - name = "crosstool_top_" + config_type, - actual = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/" + config_type + ":toolchain", -) for config_type in CONFIG_TYPES] - -[alias( - name = "toolchain_" + config_type, - actual = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/cpp:cc-toolchain-clang-x86_64-" + config_type, -) for config_type in CONFIG_TYPES] - -alias( - name = "platform", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":rbe_debian8_jdk8", -) - -alias( - name = "javabase", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":jdk8", -) - -# For internal testing purpose only. -toolchain( - name = "toolchain_docker", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:support_docker", - "//constraints:jessie", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/dependency-specs/README.md b/configs/dependency-specs/README.md deleted file mode 100644 index 031a8dc5a..000000000 --- a/configs/dependency-specs/README.md +++ /dev/null @@ -1,24 +0,0 @@ -This directory contains YAML files which are used to define how to query the -latest available versions of dependencies for a particular toolchain config. - -A single dependency specification file indicates the location of the Bazel -image used to determine the latest Bazel version and the toolchain container -used to determine the latest toolchain container version. - -The following is an example YAML config for the RBE Ubuntu 16.04 container. -```yaml -# Location of the config-dependency tracker file on the repository -# specified in the Github spec YAML file to the toolchain configs update -# service. -revisionsFilePath: "configs/dependency-tracking/ubuntu16_04.yaml" -gcrDeps: - # The RBE Ubuntu 16.04 toolchain container. - - name: "IMAGE" - location: "marketplace.gcr.io/google/rbe-ubuntu16-04" - tag: "latest" - # The Bazel container. - - name: "BAZEL" - location: "marketplace.gcr.io/google/bazel" - tag: "latest" -``` - diff --git a/configs/dependency-specs/ubuntu16_04.yaml b/configs/dependency-specs/ubuntu16_04.yaml deleted file mode 100644 index 86ef37172..000000000 --- a/configs/dependency-specs/ubuntu16_04.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Location of the config-dependency tracker file on the repository -# specified in the Github spec YAML file to the toolchain configs update -# service. -revisionsFilePath: "configs/dependency-tracking/ubuntu16_04.yaml" -gcrDeps: - # The RBE Ubuntu 16.04 toolchain container. - - name: "IMAGE" - location: "marketplace.gcr.io/google/rbe-ubuntu16-04" - tag: "latest" - # The Ubuntu Bazel + Docker + Gcloud container which is tagged with the - # bazel version. - - name: "BAZEL" - location: "gcr.io/asci-toolchain/nosla-ubuntu16_04-bazel-docker-gcloud" - tag: "latest" - - diff --git a/configs/dependency-tracking/BUILD b/configs/dependency-tracking/BUILD deleted file mode 100644 index 7e7d7d236..000000000 --- a/configs/dependency-tracking/BUILD +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2017 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. - -load("@bazel_skylib//:bzl_library.bzl", "bzl_library") - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -bzl_library( - name = "dependency-tracking", - srcs = ["ubuntu1604.bzl"], -) diff --git a/configs/dependency-tracking/README.md b/configs/dependency-tracking/README.md deleted file mode 100644 index bf6549105..000000000 --- a/configs/dependency-tracking/README.md +++ /dev/null @@ -1,26 +0,0 @@ -This directory contains Starlark files which are used to track dependencies for -configs generated for specific RBE toolchain containers. - -A single dependency tracking file indicates the latest bazel version and -toolchain container the corresponding toolchain configs were last generated for. -When a new bazel versions or toolchain container version is available, the -dependency tracking file will be automatically updated by the config dependency -update service. This in turn will trigger a GCB build to generate the new -configs. - -The following is an example Starlark file for the RBE Ubuntu 16.04 container. -```python -# The version of Bazel. -bazel = "0.21.0" -# The registry the toolchain container resides on. -registry = "marketplace.gcr.io" -# The repository path to the toolchain container. -repository = "google/rbe-ubuntu16-04" -# The sha256 digest of the toolchain container. -digest = "sha256:f3120a030a19d67626ababdac79cc787e699a1aa924081431285118f87e7b375" -# The version of the configs. -configs_version = "7.0.0" -``` - -Note: Comments in the Starlark files will not be preserved by the dependency -update service. diff --git a/configs/dependency-tracking/ubuntu1604.bzl b/configs/dependency-tracking/ubuntu1604.bzl deleted file mode 100644 index f693d8196..000000000 --- a/configs/dependency-tracking/ubuntu1604.bzl +++ /dev/null @@ -1,6 +0,0 @@ -"""Information tracking the latest published configs.""" -bazel = "4.0.0" -registry = "marketplace.gcr.io" -repository = "google/rbe-ubuntu16-04" -digest = "sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" -configs_version = "11.0.0" diff --git a/configs/experimental/BUILD b/configs/experimental/BUILD deleted file mode 100644 index 9c1604a12..000000000 --- a/configs/experimental/BUILD +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/BUILD b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/BUILD deleted file mode 100755 index 5ac85bed5..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/BUILD +++ /dev/null @@ -1,115 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "msan_experimental_toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -filegroup(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -filegroup(name = "toolchain_category") - -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_category", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/CROSSTOOL b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/CROSSTOOL deleted file mode 100755 index 621511d19..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/CROSSTOOL +++ /dev/null @@ -1,1149 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - -} - -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 } - - - -} diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/METADATA b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/METADATA deleted file mode 100644 index f253f897c..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:62ad7c44890792fdb2c2593fc24cfab7132e3a112d55bd453e09387906ae5e2f diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/cc_wrapper.sh b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/dummy_toolchain.bzl b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/BUILD b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/BUILD deleted file mode 100755 index 2684b599d..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/BUILD +++ /dev/null @@ -1,115 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "ubsan_experimental_toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":empty", - compiler_files = ":empty", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -filegroup(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -filegroup(name = "toolchain_category") - -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_category", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/CROSSTOOL b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/CROSSTOOL deleted file mode 100755 index 18b9c99fe..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,1923 +0,0 @@ -# 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 } - - - -} diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/METADATA b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/METADATA deleted file mode 100644 index f253f897c..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:62ad7c44890792fdb2c2593fc24cfab7132e3a112d55bd453e09387906ae5e2f diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/cc_wrapper.sh b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/dummy_toolchain.bzl b/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/debian8_clang/0.2.0/bazel_0.9.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/BUILD b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/BUILD deleted file mode 100755 index 23abd453b..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/BUILD +++ /dev/null @@ -1,118 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "msan_experimental_toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/CROSSTOOL b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/CROSSTOOL deleted file mode 100755 index ad4ebd9c9..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/CROSSTOOL +++ /dev/null @@ -1,1181 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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: "" - 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: "" - 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 } - - - -} diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/METADATA b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/METADATA deleted file mode 100644 index d1cdb4ef8..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:ac3b1fdc22c0f2b95abe67f2daf33788425fab52d4e6845900bfe1a42443098f diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/cc_wrapper.sh b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/dummy_toolchain.bzl b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/BUILD b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/BUILD deleted file mode 100755 index a94ef115c..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/BUILD +++ /dev/null @@ -1,118 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "ubsan_experimental_toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -toolchain( - name = "dummy_cc_toolchain_type", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/CROSSTOOL b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/CROSSTOOL deleted file mode 100644 index 61325b9aa..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,1914 +0,0 @@ -# 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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - - 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" - 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/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - 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 - } - - - 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: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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: "" - 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: "" - 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 } - - - -} - diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/METADATA b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/METADATA deleted file mode 100644 index d1cdb4ef8..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:ac3b1fdc22c0f2b95abe67f2daf33788425fab52d4e6845900bfe1a42443098f diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/cc_wrapper.sh b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/dummy_toolchain.bzl b/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.10.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/BUILD b/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/BUILD deleted file mode 100755 index 596caba13..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/BUILD +++ /dev/null @@ -1,112 +0,0 @@ -# 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. - -load(":dummy_toolchain.bzl", "dummy_toolchain") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -cc_toolchain_type(name = "toolchain_type") - -# A dummy toolchain is necessary to satisfy toolchain resolution until platforms -# are used in c++ by default. -# TODO(b/64754003): Remove once platforms are used in c++ by default. -toolchain( - name = "dummy_cc_toolchain", - toolchain = "dummy_cc_toolchain_impl", - toolchain_type = ":toolchain_type", -) - -dummy_toolchain(name = "dummy_cc_toolchain_impl") diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/CROSSTOOL b/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/CROSSTOOL deleted file mode 100755 index 29a50a51b..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2163 +0,0 @@ -# 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: "glibc_2.19" - 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: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - 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/7.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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-o" - flag: "%{output_object_file}" - expand_if_all_available: "output_object_file" - } - flag_group { - flag: "-S" - flag: "-o" - flag: "%{output_assembly_file}" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - flag: "-o" - flag: "%{output_preprocess_file}" - expand_if_all_available: "output_preprocess_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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-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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - pattern: "lib%{base_name}.a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - pattern: "lib%{base_name}.lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - pattern: "lib%{base_name}.so" - } - artifact_name_pattern { - category_name: "executable" - pattern: "%{base_name}" - } - artifact_name_pattern { - category_name: "interface_library" - pattern: "lib%{base_name}.ifso" - } - artifact_name_pattern { - category_name: "pic_file" - pattern: "%{output_name}.pic" - } - artifact_name_pattern { - category_name: "included_file_list" - pattern: "%{output_name}.d" - } - artifact_name_pattern { - category_name: "object_file" - pattern: "%{output_name}.o" - } - artifact_name_pattern { - category_name: "pic_object_file" - pattern: "%{output_name}.pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - pattern: "%{output_name}.pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - pattern: "%{output_name}.s" - } - artifact_name_pattern { - category_name: "processed_header" - pattern: "%{output_name}.processed" - } - artifact_name_pattern { - category_name: "generated_header" - pattern: "%{output_name}.h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - pattern: "%{output_name}.i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - pattern: "%{output_name}.ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - pattern: "%{output_name}.gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - pattern: "%{output_name}.opb" - } - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-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" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/METADATA b/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/METADATA deleted file mode 100644 index 7618edbf6..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-debian8@sha256:213da2494bb763f55363213db45d9bfa5eb906039fc02e6cb2e6637dc4917caf diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/cc_wrapper.sh b/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/dummy_toolchain.bzl b/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/debian8_clang/0.3.0/bazel_0.12.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/CROSSTOOL deleted file mode 100755 index 5a13408e3..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2069 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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: "glibc_2.19" - 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: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - 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/7.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: "static_link_cpp_runtimes" - } - 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-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - flag: "%{output_execpath}" - } - expand_if_all_available: "output_execpath" - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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-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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-o" - flag: "%{output_object_file}" - expand_if_all_available: "output_object_file" - } - flag_group { - flag: "-S" - flag: "-o" - flag: "%{output_assembly_file}" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - flag: "-o" - flag: "%{output_preprocess_file}" - expand_if_all_available: "output_preprocess_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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-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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - pattern: "lib%{base_name}.a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - pattern: "lib%{base_name}.lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - pattern: "lib%{base_name}.so" - } - artifact_name_pattern { - category_name: "executable" - pattern: "%{base_name}" - } - artifact_name_pattern { - category_name: "interface_library" - pattern: "lib%{base_name}.ifso" - } - artifact_name_pattern { - category_name: "pic_file" - pattern: "%{output_name}.pic" - } - artifact_name_pattern { - category_name: "included_file_list" - pattern: "%{output_name}.d" - } - artifact_name_pattern { - category_name: "object_file" - pattern: "%{output_name}.o" - } - artifact_name_pattern { - category_name: "pic_object_file" - pattern: "%{output_name}.pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - pattern: "%{output_name}.pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - pattern: "%{output_name}.s" - } - artifact_name_pattern { - category_name: "processed_header" - pattern: "%{output_name}.processed" - } - artifact_name_pattern { - category_name: "generated_header" - pattern: "%{output_name}.h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - pattern: "%{output_name}.i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - pattern: "%{output_name}.ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - pattern: "%{output_name}.gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - pattern: "%{output_name}.opb" - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.13.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/CROSSTOOL deleted file mode 100755 index fbcc9a93e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/CROSSTOOL +++ /dev/null @@ -1,2069 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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: "glibc_2.19" - compiler: "clang" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - tool_path { - name: "ar" - path: "/usr/bin/ar" - } - tool_path { - name: "ld" - path: "/usr/bin/ld" - } - tool_path { - name: "cpp" - path: "/usr/bin/cpp" - } - tool_path { - name: "gcc" - path: "/usr/local/bin/clang" - } - tool_path { - name: "dwp" - path: "/usr/bin/dwp" - } - tool_path { - name: "gcov" - path: "None" - } - 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" - } - 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: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - 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/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - 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: "static_link_cpp_runtimes" - } - 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-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - flag: "%{output_execpath}" - } - expand_if_all_available: "output_execpath" - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-o" - flag: "%{output_object_file}" - expand_if_all_available: "output_object_file" - } - flag_group { - flag: "-S" - flag: "-o" - flag: "%{output_assembly_file}" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - flag: "-o" - flag: "%{output_preprocess_file}" - expand_if_all_available: "output_preprocess_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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-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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - pattern: "lib%{base_name}.a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - pattern: "lib%{base_name}.lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - pattern: "lib%{base_name}.so" - } - artifact_name_pattern { - category_name: "executable" - pattern: "%{base_name}" - } - artifact_name_pattern { - category_name: "interface_library" - pattern: "lib%{base_name}.ifso" - } - artifact_name_pattern { - category_name: "pic_file" - pattern: "%{output_name}.pic" - } - artifact_name_pattern { - category_name: "included_file_list" - pattern: "%{output_name}.d" - } - artifact_name_pattern { - category_name: "object_file" - pattern: "%{output_name}.o" - } - artifact_name_pattern { - category_name: "pic_object_file" - pattern: "%{output_name}.pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - pattern: "%{output_name}.pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - pattern: "%{output_name}.s" - } - artifact_name_pattern { - category_name: "processed_header" - pattern: "%{output_name}.processed" - } - artifact_name_pattern { - category_name: "generated_header" - pattern: "%{output_name}.h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - pattern: "%{output_name}.i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - pattern: "%{output_name}.ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - pattern: "%{output_name}.gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - pattern: "%{output_name}.opb" - } - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.14.1/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/CROSSTOOL deleted file mode 100755 index fe57ba050..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2147 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - 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: "static_link_cpp_runtimes" - } - 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}" - expand_if_all_available: "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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - 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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - flag: "%{output_execpath}" - } - expand_if_all_available: "output_execpath" - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-preprocessing" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - 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 { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - 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' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.0/bazel_0.15.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/CROSSTOOL deleted file mode 100755 index c6e78d64a..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/CROSSTOOL +++ /dev/null @@ -1,2108 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - 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++-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: "static_link_cpp_runtimes" - } - 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-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}" - expand_if_all_available: "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++-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++-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++-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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - feature { - name: "xbinaryfdo" - 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: "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: "symbol_counts" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - flag: "%{output_execpath}" - } - expand_if_all_available: "output_execpath" - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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++-module-compile" - flag_group { - flag: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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++-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++-module-compile" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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++-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } - - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.16.1/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/BUILD deleted file mode 100755 index 2217d8480..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/BUILD +++ /dev/null @@ -1,109 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/CROSSTOOL deleted file mode 100755 index 79fc1ba4e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/CROSSTOOL +++ /dev/null @@ -1,2147 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - 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++-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: "static_link_cpp_runtimes" - } - 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-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}" - expand_if_all_available: "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++-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++-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++-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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - feature { - name: "xbinaryfdo" - 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: "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: "symbol_counts" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - } - flag_group { - flag: "%{output_execpath}" - expand_if_all_available: "output_execpath" - } - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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++-module-compile" - flag_group { - flag: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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++-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++-module-compile" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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++-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } - - - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.17.1/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/CROSSTOOL deleted file mode 100755 index f97ee4e55..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2145 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - 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++-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: "static_link_cpp_runtimes" - } - 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-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}" - expand_if_all_available: "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++-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++-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++-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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - feature { - name: "xbinaryfdo" - 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: "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: "symbol_counts" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - } - flag_group { - flag: "%{output_execpath}" - expand_if_all_available: "output_execpath" - } - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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++-module-compile" - flag_group { - flag: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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++-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++-module-compile" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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++-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.18.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/CROSSTOOL deleted file mode 100755 index d42a0e304..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2143 +0,0 @@ -# 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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - 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++-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: "static_link_cpp_runtimes" - } - 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-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}" - expand_if_all_available: "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++-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++-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++-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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - expand_if_all_available: "fdo_instrument_path" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - feature { - name: "xbinaryfdo" - 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: "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: "symbol_counts" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - } - flag_group { - flag: "%{output_execpath}" - expand_if_all_available: "output_execpath" - } - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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++-module-compile" - flag_group { - flag: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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++-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++-module-compile" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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++-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } - - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.19.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/CROSSTOOL deleted file mode 100755 index 5e8585976..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2101 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - 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++-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: "static_link_cpp_runtimes" - } - 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-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++-compile" - action: "c++-module-codegen" - action: "c++-module-compile" - flag_group { - flag: "-frandom-seed=%{output_file}" - expand_if_all_available: "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++-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++-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++-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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - expand_if_all_available: "fdo_instrument_path" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - 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: "symbol_counts" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - } - flag_group { - flag: "%{output_execpath}" - expand_if_all_available: "output_execpath" - } - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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++-module-compile" - flag_group { - flag: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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++-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++-module-compile" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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++-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } - - - - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.1/bazel_0.21.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/CROSSTOOL b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/CROSSTOOL deleted file mode 100755 index 450ec85b3..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/CROSSTOOL +++ /dev/null @@ -1,2101 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/9.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - 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++-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: "static_link_cpp_runtimes" - } - 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-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++-compile" - action: "c++-module-codegen" - action: "c++-module-compile" - flag_group { - flag: "-frandom-seed=%{output_file}" - expand_if_all_available: "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++-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++-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++-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-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "-fprofile-generate=%{fdo_instrument_path}" - flag: "-fno-data-sections" - expand_if_all_available: "fdo_instrument_path" - } - } - provides: "profile" - } - feature { - name: "fdo_prefetch_hints" - flag_set { - action: "c-compile" - action: "c++-compile" - action: "lto-backend" - flag_group { - flag: "-Xclang-only=-mllvm" - flag: "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}" - } - expand_if_all_available: "fdo_prefetch_hints_path" - } - } - 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: "symbol_counts" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-shared" - } - } - } - feature { - name: "linkstamps" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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" - action: "c++-link-nodeps-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" - action: "c++-link-nodeps-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" - flag_group { - flag: "rcsD" - } - flag_group { - flag: "%{output_execpath}" - expand_if_all_available: "output_execpath" - } - } - flag_set { - action: "c++-link-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" - action: "c++-link-nodeps-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: "user_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "%{user_link_flags}" - iterate_over: "user_link_flags" - } - expand_if_all_available: "user_link_flags" - } - } - feature { - name: "legacy_link_flags" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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-nodeps-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-nodeps-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++-module-compile" - flag_group { - flag: "--coverage" - } - } - flag_set { - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-executable" - flag_group { - flag: "--coverage" - } - } - 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: "fully_static_link" - flag_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - flag_group { - flag: "-static" - } - } - } - 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++-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++-module-compile" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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++-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" - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "-Wl,@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - flag_set { - action: "c++-link-static-library" - flag_group { - flag: "@%{linker_param_file}" - } - expand_if_all_available: "linker_param_file" - } - } - feature { - name: "compiler_input_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-c" - flag: "%{source_file}" - } - expand_if_all_available: "source_file" - } - enabled: true - } - feature { - name: "compiler_output_flags" - flag_set { - action: "assemble" - action: "preprocess-assemble" - action: "c-compile" - action: "c++-compile" - action: "linkstamp-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "objc-compile" - action: "objc++-compile" - action: "c++-header-parsing" - action: "lto-backend" - flag_group { - flag: "-S" - expand_if_all_available: "output_assembly_file" - } - flag_group { - flag: "-E" - expand_if_all_available: "output_preprocess_file" - } - flag_group { - flag: "-o" - flag: "%{output_file}" - expand_if_all_available: "output_file" - } - } - enabled: true - } - 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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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" - implies: "compiler_input_flags" - implies: "compiler_output_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: "user_link_flags" - implies: "legacy_link_flags" - implies: "linker_param_file" - implies: "fission_support" - implies: "sysroot" - } - action_config { - config_name: "c++-link-nodeps-dynamic-library" - action_name: "c++-link-nodeps-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: "user_link_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: "user_link_flags" - 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: "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}" - } - } - } - artifact_name_pattern { - category_name: "static_library" - prefix: "lib" - extension: ".a" - } - artifact_name_pattern { - category_name: "alwayslink_static_library" - prefix: "lib" - extension: ".lo" - } - artifact_name_pattern { - category_name: "dynamic_library" - prefix: "lib" - extension: ".so" - } - artifact_name_pattern { - category_name: "executable" - prefix: "" - extension: "" - } - artifact_name_pattern { - category_name: "interface_library" - prefix: "lib" - extension: ".ifso" - } - artifact_name_pattern { - category_name: "pic_file" - prefix: "" - extension: ".pic" - } - artifact_name_pattern { - category_name: "included_file_list" - prefix: "" - extension: ".d" - } - artifact_name_pattern { - category_name: "object_file" - prefix: "" - extension: ".o" - } - artifact_name_pattern { - category_name: "pic_object_file" - prefix: "" - extension: ".pic.o" - } - artifact_name_pattern { - category_name: "cpp_module" - prefix: "" - extension: ".pcm" - } - artifact_name_pattern { - category_name: "generated_assembly" - prefix: "" - extension: ".s" - } - artifact_name_pattern { - category_name: "processed_header" - prefix: "" - extension: ".processed" - } - artifact_name_pattern { - category_name: "generated_header" - prefix: "" - extension: ".h" - } - artifact_name_pattern { - category_name: "preprocessed_c_source" - prefix: "" - extension: ".i" - } - artifact_name_pattern { - category_name: "preprocessed_cpp_source" - prefix: "" - extension: ".ii" - } - artifact_name_pattern { - category_name: "coverage_data_file" - prefix: "" - extension: ".gcno" - } - artifact_name_pattern { - category_name: "clif_output_proto" - prefix: "" - extension: ".opb" - } - - - - -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/METADATA deleted file mode 100644 index be56c551b..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:963ea21d047664257c91fb0e05d9a6e9acf1481ea1874736af4d4ceed1e02a0c diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.21.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/BUILD deleted file mode 100755 index 481d5fa12..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/BUILD +++ /dev/null @@ -1,87 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/METADATA b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/METADATA deleted file mode 100644 index be56c551b..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:963ea21d047664257c91fb0e05d9a6e9acf1481ea1874736af4d4ceed1e02a0c diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/cc_toolchain_config.bzl deleted file mode 100644 index 7cddecf75..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1414 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "feature", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -def _impl(ctx): - 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 = "glibc_2.19" - - compiler = "clang" - - abi_version = "clang" - - abi_libc_version = "glibc_2.19" - - cc_target_os = None - - builtin_sysroot = None - - all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, - ] - - all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ] - - preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ] - - codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ] - - all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ] - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "force_pic_flags", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = ["archiver_flags", "linker_param_file"], - tools = [tool(path = "/usr/bin/ar")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - cpp_header_parsing_action = action_config( - action_name = ACTION_NAMES.cpp_header_parsing, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - cpp_module_codegen_action = action_config( - action_name = ACTION_NAMES.cpp_module_codegen, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - linkstamp_compile_action = action_config( - action_name = ACTION_NAMES.linkstamp_compile, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - cpp_module_compile_action = action_config( - action_name = ACTION_NAMES.cpp_module_compile, - implies = [ - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - "compiler_input_flags", - "compiler_output_flags", - ], - tools = [tool(path = "/usr/local/bin/clang")], - ) - - strip_action = action_config( - action_name = ACTION_NAMES.strip, - flag_sets = [ - flag_set( - flag_groups = [ - flag_group(flags = ["-S", "-p", "-o", "%{output_file}"]), - flag_group( - flags = [ - "-R", - ".gnu.switches.text.quote_paths", - "-R", - ".gnu.switches.text.bracket_paths", - "-R", - ".gnu.switches.text.system_paths", - "-R", - ".gnu.switches.text.cpp_defines", - "-R", - ".gnu.switches.text.cpp_includes", - "-R", - ".gnu.switches.text.cl_args", - "-R", - ".gnu.switches.text.lipo_info", - "-R", - ".gnu.switches.text.annotation", - ], - ), - flag_group( - flags = ["%{stripopts}"], - iterate_over = "stripopts", - ), - flag_group(flags = ["%{input_file}"]), - ], - ), - ], - tools = [tool(path = "/usr/bin/strip")], - ) - - objcopy_embed_data_action = action_config( - action_name = "objcopy_embed_data", - enabled = True, - tools = [tool(path = "/usr/bin/objcopy")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - linkstamp_compile_action, - c_compile_action, - cpp_compile_action, - cpp_header_parsing_action, - cpp_module_compile_action, - cpp_module_codegen_action, - cpp_link_executable_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_dynamic_library_action, - cpp_link_static_library_action, - strip_action, - objcopy_embed_data_action, - ] - - no_legacy_features_feature = feature(name = "no_legacy_features") - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - objcopy_embed_flags_feature = feature( - name = "objcopy_embed_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = ["objcopy_embed_data"], - flag_groups = [flag_group(flags = ["-I", "binary"])], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_available = "libraries_to_link", - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - coverage_feature = feature( - name = "coverage", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - provides = ["profile"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = ["-c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = ["-S"], - expand_if_available = "output_assembly_file", - ), - flag_group( - flags = ["-E"], - expand_if_available = "output_preprocess_file", - ), - flag_group( - flags = ["-o", "%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - opt_feature = feature(name = "opt") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["-Wl,--gc-sections"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [flag_group(flags = ["-g"])], - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - ), - ], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [flag_group(flags = ["-std=c++0x"])], - ), - ], - ) - - static_link_cpp_runtimes_feature = feature(name = "static_link_cpp_runtimes") - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = "runtime_library_search_directories", - ), - ], - ), - ], - ) - - fully_static_link_feature = feature( - name = "fully_static_link", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static"])], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - supports_start_end_lib_feature = feature(name = "supports_start_end_lib", enabled = True) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--print-symbol-counts=%{symbol_counts_output}"], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_executable], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - - features = [ - no_legacy_features_feature, - default_compile_flags_feature, - static_link_cpp_runtimes_feature, - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - libraries_to_link_feature, - force_pic_flags_feature, - user_link_flags_feature, - default_link_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - fdo_optimize_feature, - fully_static_link_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - linker_param_file_feature, - compiler_input_flags_feature, - compiler_output_flags_feature, - supports_dynamic_linker_feature, - supports_start_end_lib_feature, - supports_pic_feature, - objcopy_embed_flags_feature, - opt_feature, - dbg_feature, - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "static_library", - prefix = "lib", - extension = ".a", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "lib", - extension = ".lo", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "lib", - extension = ".so", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = "", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "lib", - extension = ".ifso", - ), - artifact_name_pattern( - category_name = "pic_file", - prefix = "", - extension = ".pic", - ), - artifact_name_pattern( - category_name = "included_file_list", - prefix = "", - extension = ".d", - ), - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".o", - ), - artifact_name_pattern( - category_name = "pic_object_file", - prefix = "", - extension = ".pic.o", - ), - artifact_name_pattern( - category_name = "cpp_module", - prefix = "", - extension = ".pcm", - ), - artifact_name_pattern( - category_name = "generated_assembly", - prefix = "", - extension = ".s", - ), - artifact_name_pattern( - category_name = "processed_header", - prefix = "", - extension = ".processed", - ), - artifact_name_pattern( - category_name = "generated_header", - prefix = "", - extension = ".h", - ), - artifact_name_pattern( - category_name = "preprocessed_c_source", - prefix = "", - extension = ".i", - ), - artifact_name_pattern( - category_name = "preprocessed_cpp_source", - prefix = "", - extension = ".ii", - ), - artifact_name_pattern( - category_name = "coverage_data_file", - prefix = "", - extension = ".gcno", - ), - artifact_name_pattern( - category_name = "clif_output_proto", - prefix = "", - extension = ".opb", - ), - ] - - make_variables = [] - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - out = ctx.actions.declare_file(ctx.label.name) - ctx.actions.write(out, "Fake executable") - return [ - cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ), - DefaultInfo( - executable = out, - ), - ] - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True, values = ["k8"]), - }, - provides = [CcToolchainConfigInfo], - executable = True, -) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/dummy_toolchain.bzl b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.23.0/ubsan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/BUILD deleted file mode 100755 index 09c3acb5d..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/BUILD +++ /dev/null @@ -1,162 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/armeabi_cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/cc_toolchain_config.bzl deleted file mode 100755 index e7fe26b3e..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1268 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - - # the three action_configs below are custom for ubsan, they point to - # clang++ as tool - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "force_pic_flags", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - action_configs = [ - cpp_link_executable_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_dynamic_library_action, - ] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_executable], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.2/bazel_0.28.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/BUILD deleted file mode 100755 index ee03f73cb..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/armeabi_cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/builtin_include_directory_paths b/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/builtin_include_directory_paths deleted file mode 100755 index fb407c92a..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/4.9 -/usr/include/x86_64-linux-gnu/c++/4.9 -/usr/include/c++/4.9/backward diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/cc_toolchain_config.bzl deleted file mode 100755 index 7c9010f66..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1199 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - - # the three action_configs below are custom for ubsan, they point to - # clang++ as tool - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "force_pic_flags", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - action_configs = [ - cpp_link_executable_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_dynamic_library_action, - ] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_0.29.1/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/BUILD b/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/armeabi_cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/builtin_include_directory_paths b/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/cc_toolchain_config.bzl b/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/cc_toolchain_config.bzl deleted file mode 100755 index bc3462883..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1263 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - - # the three action_configs below are custom for ubsan, they point to - # clang++ as tool - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "force_pic_flags", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "symbol_counts", - "strip_debug_symbols", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "runtime_library_search_directories", - "library_search_directories", - "libraries_to_link", - "user_link_flags", - "linker_param_file", - "fission_support", - "sysroot", - ], - tools = [tool(path = "/usr/local/bin/clang++")], - ) - - action_configs = [ - cpp_link_executable_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_dynamic_library_action, - ] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/cc_wrapper.sh b/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/experimental/windows/0.1.0/BUILD b/configs/experimental/windows/0.1.0/BUILD deleted file mode 100644 index e5dbdc19e..000000000 --- a/configs/experimental/windows/0.1.0/BUILD +++ /dev/null @@ -1,128 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk8", - srcs = [], - java_home = "C:/openjdk", -) - -# Below are a number of almost identical Windows platforms. It is desirable to -# be able to vary the "Pool" property at runtime, but since it has to be baked -# into this BUILD file it's not possible. As a compromise, provide one platform -# for each of the default pool, and three generic Windows pools. - -# RBE Windows 1803 image that uses any pool. -platform( - name = "rbe", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - remote_execution_properties = """ - properties:{ - name:"container-image" - value:"docker://gcr.io/rbe-windows-test-images/windowstest@sha256:81b032d1496868a5b415973e33a0fa4076e5136dc9dc59ba816dde1f3716db80" - } - properties:{ - name: "OSFamily" value: "Windows" - } - """, -) - -# RBE Windows 1803 image that uses "default" pool. -platform( - name = "rbe_default", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - remote_execution_properties = """ - properties:{ - name:"container-image" - value:"docker://gcr.io/rbe-windows-test-images/windowstest@sha256:81b032d1496868a5b415973e33a0fa4076e5136dc9dc59ba816dde1f3716db80" - } - properties:{ - name: "OSFamily" value: "Windows" - } - properties:{ - name: "Pool" value: "default" - } - """, -) - -# RBE Windows 1803 image that uses "windows_1" pool. -platform( - name = "rbe_windows_1", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - remote_execution_properties = """ - properties:{ - name:"container-image" - value:"docker://gcr.io/rbe-windows-test-images/windowstest@sha256:81b032d1496868a5b415973e33a0fa4076e5136dc9dc59ba816dde1f3716db80" - } - properties:{ - name: "OSFamily" value: "Windows" - } - properties:{ - name: "Pool" value: "windows_1" - } - """, -) - -# RBE Windows 1803 image that uses "windows_2" pool. -platform( - name = "rbe_windows_2", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - remote_execution_properties = """ - properties:{ - name:"container-image" - value:"docker://gcr.io/rbe-windows-test-images/windowstest@sha256:81b032d1496868a5b415973e33a0fa4076e5136dc9dc59ba816dde1f3716db80" - } - properties:{ - name: "OSFamily" value: "Windows" - } - properties:{ - name: "Pool" value: "windows_2" - } - """, -) - -# RBE Windows 1803 image that uses "windows_3" pool. -platform( - name = "rbe_windows_3", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - remote_execution_properties = """ - properties:{ - name:"container-image" - value:"docker://gcr.io/rbe-windows-test-images/windowstest@sha256:81b032d1496868a5b415973e33a0fa4076e5136dc9dc59ba816dde1f3716db80" - } - properties:{ - name: "OSFamily" value: "Windows" - } - properties:{ - name: "Pool" value: "windows_3" - } - """, -) diff --git a/configs/experimental/windows/0.1.0/bazel_0.19.0/BUILD b/configs/experimental/windows/0.1.0/bazel_0.19.0/BUILD deleted file mode 100644 index 8d1138ff1..000000000 --- a/configs/experimental/windows/0.1.0/bazel_0.19.0/BUILD +++ /dev/null @@ -1,155 +0,0 @@ -# Copyright 2018 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. - -# This becomes the BUILD file for @local_config_cc// under Windows. - -package(default_visibility = ["//visibility:public"]) - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -# Hardcoded toolchain, legacy behaviour. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "x64_windows": ":cc-compiler-x64_windows_msys", - "x64_windows|mingw-gcc": ":cc-compiler-x64_windows_mingw", - "x64_windows|msvc-cl": ":cc-compiler-x64_windows", - "x64_windows|msys-gcc": ":cc-compiler-x64_windows_msys", - }, -) - -cc_toolchain( - name = "cc-compiler-x64_windows_msys", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-x64_windows_msys", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - "@bazel_tools//tools/cpp:msys", - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - toolchain = ":cc-compiler-x64_windows_msys", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-x64_windows_mingw", - all_files = ":empty", - compiler_files = ":empty", - cpu = "x64_windows", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 0, -) - -toolchain( - name = "cc-toolchain-x64_windows_mingw", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - "@bazel_tools//tools/cpp:mingw", - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - toolchain = ":cc-compiler-x64_windows_mingw", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-x64_windows", - all_files = ":empty", - compiler_files = ":empty", - cpu = "x64_windows", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-x64_windows", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - toolchain = ":cc-compiler-x64_windows", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armeabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/experimental/windows/0.1.0/bazel_0.19.0/CROSSTOOL b/configs/experimental/windows/0.1.0/bazel_0.19.0/CROSSTOOL deleted file mode 100644 index cf7b4bd3c..000000000 --- a/configs/experimental/windows/0.1.0/bazel_0.19.0/CROSSTOOL +++ /dev/null @@ -1,1207 +0,0 @@ -# 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: "x64_windows" - toolchain_identifier: "msvc_x64" -} - -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: "msys_x64" -} - -# 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: "msys_x64" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "msys-gcc" - host_system_name: "local" - needsPic: false - target_libc: "msys" - target_cpu: "x64_windows" - target_system_name: "local" - tool_path { name: "ar" path: "c:/tools/msys64/usr/bin/ar" } - tool_path { name: "compat-ld" path: "c:/tools/msys64/usr/bin/ld" } - tool_path { name: "cpp" path: "c:/tools/msys64/usr/bin/cpp" } - tool_path { name: "dwp" path: "c:/tools/msys64/usr/bin/dwp" } - tool_path { name: "gcc" path: "c:/tools/msys64/usr/bin/gcc" } - artifact_name_pattern { category_name: "executable" prefix: "" extension: ".exe"} - cxx_flag: "-std=gnu++0x" - linker_flag: "-lstdc++" - cxx_builtin_include_directory: "c:/tools/msys64/usr/" - tool_path { name: "gcov" path: "c:/tools/msys64/usr/bin/gcov" } - tool_path { name: "ld" path: "c:/tools/msys64/usr/bin/ld" } - tool_path { name: "nm" path: "c:/tools/msys64/usr/bin/nm" } - tool_path { name: "objcopy" path: "c:/tools/msys64/usr/bin/objcopy" } - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - tool_path { name: "objdump" path: "c:/tools/msys64/usr/bin/objdump" } - tool_path { name: "strip" path: "c:/tools/msys64/usr/bin/strip" } feature { name: "targets_windows" implies: "copy_dynamic_libraries_to_binary" enabled: true } feature { name: "copy_dynamic_libraries_to_binary" } - - compilation_mode_flags { - mode: DBG - - } - compilation_mode_flags { - mode: OPT - - } - linking_mode_flags { mode: DYNAMIC } - - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - tool_path { name: "ar" path: "c:/tools/msys64/mingw64/bin/ar" } - tool_path { name: "compat-ld" path: "c:/tools/msys64/mingw64/bin/ld" } - tool_path { name: "cpp" path: "c:/tools/msys64/mingw64/bin/cpp" } - tool_path { name: "dwp" path: "c:/tools/msys64/mingw64/bin/dwp" } - tool_path { name: "gcc" path: "c:/tools/msys64/mingw64/bin/gcc" } - artifact_name_pattern { category_name: "executable" prefix: "" extension: ".exe"} - cxx_flag: "-std=gnu++0x" - linker_flag: "-lstdc++" - cxx_builtin_include_directory: "c:/tools/msys64/mingw64/" - tool_path { name: "gcov" path: "c:/tools/msys64/mingw64/bin/gcov" } - tool_path { name: "ld" path: "c:/tools/msys64/mingw64/bin/ld" } - tool_path { name: "nm" path: "c:/tools/msys64/mingw64/bin/nm" } - tool_path { name: "objcopy" path: "c:/tools/msys64/mingw64/bin/objcopy" } - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - tool_path { name: "objdump" path: "c:/tools/msys64/mingw64/bin/objdump" } - tool_path { name: "strip" path: "c:/tools/msys64/mingw64/bin/strip" } feature { name: "targets_windows" implies: "copy_dynamic_libraries_to_binary" enabled: true } feature { name: "copy_dynamic_libraries_to_binary" } - - linking_mode_flags { mode: DYNAMIC } -} - -toolchain { - toolchain_identifier: "msvc_x64" - # This is a workaround for https://github.com/bazelbuild/bazel/issues/5087. - cxx_builtin_include_directory: "C:\\botcode\\w" - host_system_name: "local" - target_system_name: "local" - - abi_version: "local" - abi_libc_version: "local" - target_cpu: "x64_windows" - compiler: "msvc-cl" - target_libc: "msvcrt" - default_python_version: "python2.7" - -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\INCLUDE" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.10240.0\\ucrt" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\shared" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\um" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\winrt" - - tool_path { - name: "ar" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/lib.exe" - } - tool_path { - name: "ml" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/ml64.exe" - } - tool_path { - name: "cpp" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe" - } - tool_path { - name: "gcc" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe" - } - tool_path { - name: "gcov" - path: "wrapper/bin/msvc_nop.bat" - } - tool_path { - name: "ld" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe" - } - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/ml64.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/ml64.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe' - } - implies: 'nologo' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - } - - action_config { - config_name: 'c++-link-dynamic-library' - action_name: 'c++-link-dynamic-library' - tool { - tool_path: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/lib.exe' - } - implies: 'nologo' - implies: 'archiver_flags' - implies: 'input_param_flags' - 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\amd64;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\Windows\\Microsoft.NET\\Framework64\\;C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64;C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x86;;C:\\Windows\\system32" - } - env_entry { - key: "TMP" - value: "C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp" - } - env_entry { - key: "TEMP" - value: "C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\INCLUDE;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.10240.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\shared;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\um;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\winrt;" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\LIB\\amd64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.10240.0\\ucrt\\x64;C:\\Program Files (x86)\\Windows Kits\\8.1\\lib\\winv6.3\\um\\x64;" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} - diff --git a/configs/experimental/windows/0.1.0/bazel_0.19.0/dummy_toolchain.bzl b/configs/experimental/windows/0.1.0/bazel_0.19.0/dummy_toolchain.bzl deleted file mode 100644 index 45c0285d2..000000000 --- a/configs/experimental/windows/0.1.0/bazel_0.19.0/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/experimental/windows/0.1.0/bazel_experimental/BUILD b/configs/experimental/windows/0.1.0/bazel_experimental/BUILD deleted file mode 100644 index 3548c167b..000000000 --- a/configs/experimental/windows/0.1.0/bazel_experimental/BUILD +++ /dev/null @@ -1,195 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under Windows. - -package(default_visibility = ["//visibility:public"]) - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -# Hardcoded toolchain, legacy behaviour. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "x64_windows|mingw-gcc": ":cc-compiler-x64_windows_mingw", - "x64_windows|msvc-cl": ":cc-compiler-x64_windows", - "x64_windows|msys-gcc": ":cc-compiler-x64_windows_msys", - }, -) - -cc_toolchain( - name = "cc-compiler-x64_windows_msys", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-x64_windows_msys", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - "@bazel_tools//tools/cpp:msys", - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - toolchain = ":cc-compiler-x64_windows_msys", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-x64_windows_mingw", - all_files = ":empty", - compiler_files = ":empty", - cpu = "x64_windows", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 0, -) - -toolchain( - name = "cc-toolchain-x64_windows_mingw", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - "@bazel_tools//tools/cpp:mingw", - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - toolchain = ":cc-compiler-x64_windows_mingw", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-x64_windows", - all_files = ":every-file-x64_windows", - compiler_files = ":compile-x64_windows", - cpu = "x64_windows", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-x64_windows", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:windows", - ], - toolchain = ":cc-compiler-x64_windows", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armeabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 0, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -filegroup( - name = "every-file-x64_windows", - srcs = [ - ":compile-x64_windows", - ], -) - -filegroup( - name = "compile-x64_windows", - srcs = glob([ - "wrapper/bin/msvc_*", - "wrapper/bin/pydir/msvc*", - ]), -) diff --git a/configs/experimental/windows/0.1.0/bazel_experimental/CROSSTOOL b/configs/experimental/windows/0.1.0/bazel_experimental/CROSSTOOL deleted file mode 100644 index a9d2e90d3..000000000 --- a/configs/experimental/windows/0.1.0/bazel_experimental/CROSSTOOL +++ /dev/null @@ -1,1188 +0,0 @@ -# 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: "x64_windows" - toolchain_identifier: "msvc_x64" -} - -default_toolchain { - cpu: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "msys_x64" -} - -default_toolchain { - cpu: "local" - toolchain_identifier: "ios_x86_64" -} - -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: "msys_x64" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "msys-gcc" - host_system_name: "local" - needsPic: false - target_libc: "msys" - target_cpu: "x64_windows" - target_system_name: "local" - tool_path { name: "ar" path: "c:/tools/msys64/usr/bin/ar" } - tool_path { name: "compat-ld" path: "c:/tools/msys64/usr/bin/ld" } - tool_path { name: "cpp" path: "c:/tools/msys64/usr/bin/cpp" } - tool_path { name: "dwp" path: "c:/tools/msys64/usr/bin/dwp" } - tool_path { name: "gcc" path: "c:/tools/msys64/usr/bin/gcc" } - artifact_name_pattern { category_name: "executable" prefix: "" extension: ".exe"} - cxx_flag: "-std=gnu++0x" - linker_flag: "-lstdc++" - cxx_builtin_include_directory: "c:/tools/msys64/usr/" - tool_path { name: "gcov" path: "c:/tools/msys64/usr/bin/gcov" } - tool_path { name: "ld" path: "c:/tools/msys64/usr/bin/ld" } - tool_path { name: "nm" path: "c:/tools/msys64/usr/bin/nm" } - tool_path { name: "objcopy" path: "c:/tools/msys64/usr/bin/objcopy" } - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - tool_path { name: "objdump" path: "c:/tools/msys64/usr/bin/objdump" } - tool_path { name: "strip" path: "c:/tools/msys64/usr/bin/strip" } feature { name: "targets_windows" implies: "copy_dynamic_libraries_to_binary" enabled: true } feature { name: "copy_dynamic_libraries_to_binary" } - - compilation_mode_flags { - mode: DBG - - } - compilation_mode_flags { - mode: OPT - - } - linking_mode_flags { mode: DYNAMIC } - - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - tool_path { name: "ar" path: "c:/tools/msys64/mingw64/bin/ar" } - tool_path { name: "compat-ld" path: "c:/tools/msys64/mingw64/bin/ld" } - tool_path { name: "cpp" path: "c:/tools/msys64/mingw64/bin/cpp" } - tool_path { name: "dwp" path: "c:/tools/msys64/mingw64/bin/dwp" } - tool_path { name: "gcc" path: "c:/tools/msys64/mingw64/bin/gcc" } - artifact_name_pattern { category_name: "executable" prefix: "" extension: ".exe"} - cxx_flag: "-std=gnu++0x" - linker_flag: "-lstdc++" - cxx_builtin_include_directory: "c:/tools/msys64/mingw64/" - tool_path { name: "gcov" path: "c:/tools/msys64/mingw64/bin/gcov" } - tool_path { name: "ld" path: "c:/tools/msys64/mingw64/bin/ld" } - tool_path { name: "nm" path: "c:/tools/msys64/mingw64/bin/nm" } - tool_path { name: "objcopy" path: "c:/tools/msys64/mingw64/bin/objcopy" } - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - tool_path { name: "objdump" path: "c:/tools/msys64/mingw64/bin/objdump" } - tool_path { name: "strip" path: "c:/tools/msys64/mingw64/bin/strip" } feature { name: "targets_windows" implies: "copy_dynamic_libraries_to_binary" enabled: true } feature { name: "copy_dynamic_libraries_to_binary" } - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - default_python_version: "python2.7" - -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\INCLUDE" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.10240.0\\ucrt" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\shared" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\um" -cxx_builtin_include_directory: "C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\winrt" - -# This is a workaround for https://github.com/bazelbuild/bazel/issues/5087. -cxx_builtin_include_directory: "C:\\tmp\\lre" -cxx_builtin_include_directory: "C:\\botcode\\w\\ir\\run" -cxx_builtin_include_directory: "C:\\botcode\\w" - - tool_path { - name: "ar" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/lib.exe" - } - tool_path { - name: "ml" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/ml64.exe" - } - tool_path { - name: "cpp" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe" - } - tool_path { - name: "gcc" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe" - } - tool_path { - name: "gcov" - path: "wrapper/bin/msvc_nop.bat" - } - tool_path { - name: "ld" - path: "C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe" - } - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/ml64.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/cl.exe' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe' - } - implies: 'nologo' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/link.exe' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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: 'C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/bin/amd64/lib.exe' - } - implies: 'nologo' - implies: 'archiver_flags' - implies: 'input_param_flags' - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\BIN\\amd64;C:\\Windows\\Microsoft.NET\\Framework64\\v4.0.30319;C:\\Windows\\Microsoft.NET\\Framework64\\;C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x64;C:\\Program Files (x86)\\Windows Kits\\8.1\\bin\\x86;;C:\\Windows\\system32" - } - env_entry { - key: "INCLUDE" - value: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\INCLUDE;C:\\Program Files (x86)\\Windows Kits\\10\\include\\10.0.10240.0\\ucrt;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\shared;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\um;C:\\Program Files (x86)\\Windows Kits\\8.1\\include\\winrt;" - } - env_entry { - key: "LIB" - value: "C:\\Program Files (x86)\\Microsoft Visual Studio 14.0\\VC\\LIB\\amd64;C:\\Program Files (x86)\\Windows Kits\\10\\lib\\10.0.10240.0\\ucrt\\x64;C:\\Program Files (x86)\\Windows Kits\\8.1\\lib\\winv6.3\\um\\x64;" - } - env_entry { - key: "TMP" - value: "C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp" - } - env_entry { - key: "TEMP" - value: "C:\\Users\\ContainerAdministrator\\AppData\\Local\\Temp" - } - } - } - - feature { - name: "use_linker" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - 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 { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - 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' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/experimental/windows/0.1.0/bazel_experimental/README.md b/configs/experimental/windows/0.1.0/bazel_experimental/README.md deleted file mode 100644 index 1082e03fc..000000000 --- a/configs/experimental/windows/0.1.0/bazel_experimental/README.md +++ /dev/null @@ -1,3 +0,0 @@ -This directory contains the toolchain config that works with -Bazel committed at a320e4460f35767da7fc8eb824ce1f4b304b5e0f. -(Approximately dated Jun 13, 2018). diff --git a/configs/experimental/windows/0.1.0/bazel_experimental/dummy_toolchain.bzl b/configs/experimental/windows/0.1.0/bazel_experimental/dummy_toolchain.bzl deleted file mode 100644 index 45c0285d2..000000000 --- a/configs/experimental/windows/0.1.0/bazel_experimental/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/java/0.1.0/bazel_0.5.2/BUILD b/configs/java/0.1.0/bazel_0.5.2/BUILD deleted file mode 100755 index d39032384..000000000 --- a/configs/java/0.1.0/bazel_0.5.2/BUILD +++ /dev/null @@ -1,42 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -java_toolchain( - name = "remote_toolchain", - bootclasspath = ["@bazel_tools//tools/jdk:bootclasspath"], - encoding = "UTF-8", - extclasspath = ["@bazel_tools//tools/jdk:extclasspath"], - forcibly_disable_header_compilation = 0, - genclass = ["@bazel_tools//tools/jdk:genclass"], - header_compiler = ["@bazel_tools//tools/jdk:turbine"], - ijar = ["@bazel_tools//third_party/ijar:ijar"], - javabuilder = ["@bazel_tools//tools/jdk:javabuilder"], - javac = ["@bazel_tools//third_party/java/jdk/langtools:javac_jar"], - javac_supports_workers = 1, - jvm_opts = [ - "-XX:+TieredCompilation", - "-XX:TieredStopAtLevel=1", - "-Xbootclasspath/p:$(location @bazel_tools//third_party/java/jdk/langtools:javac_jar)", - ], - misc = [ - "-XDskipDuplicateBridges=true", - ], - singlejar = ["@bazel_tools//src/tools/singlejar:singlejar"], - source_version = "8", - target_version = "8", -) diff --git a/configs/java/0.1.0/bazel_0.5.4/BUILD b/configs/java/0.1.0/bazel_0.5.4/BUILD deleted file mode 100755 index d39032384..000000000 --- a/configs/java/0.1.0/bazel_0.5.4/BUILD +++ /dev/null @@ -1,42 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -java_toolchain( - name = "remote_toolchain", - bootclasspath = ["@bazel_tools//tools/jdk:bootclasspath"], - encoding = "UTF-8", - extclasspath = ["@bazel_tools//tools/jdk:extclasspath"], - forcibly_disable_header_compilation = 0, - genclass = ["@bazel_tools//tools/jdk:genclass"], - header_compiler = ["@bazel_tools//tools/jdk:turbine"], - ijar = ["@bazel_tools//third_party/ijar:ijar"], - javabuilder = ["@bazel_tools//tools/jdk:javabuilder"], - javac = ["@bazel_tools//third_party/java/jdk/langtools:javac_jar"], - javac_supports_workers = 1, - jvm_opts = [ - "-XX:+TieredCompilation", - "-XX:TieredStopAtLevel=1", - "-Xbootclasspath/p:$(location @bazel_tools//third_party/java/jdk/langtools:javac_jar)", - ], - misc = [ - "-XDskipDuplicateBridges=true", - ], - singlejar = ["@bazel_tools//src/tools/singlejar:singlejar"], - source_version = "8", - target_version = "8", -) diff --git a/configs/java/0.1.0/bazel_0.6.0/BUILD b/configs/java/0.1.0/bazel_0.6.0/BUILD deleted file mode 100755 index d39032384..000000000 --- a/configs/java/0.1.0/bazel_0.6.0/BUILD +++ /dev/null @@ -1,42 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -java_toolchain( - name = "remote_toolchain", - bootclasspath = ["@bazel_tools//tools/jdk:bootclasspath"], - encoding = "UTF-8", - extclasspath = ["@bazel_tools//tools/jdk:extclasspath"], - forcibly_disable_header_compilation = 0, - genclass = ["@bazel_tools//tools/jdk:genclass"], - header_compiler = ["@bazel_tools//tools/jdk:turbine"], - ijar = ["@bazel_tools//third_party/ijar:ijar"], - javabuilder = ["@bazel_tools//tools/jdk:javabuilder"], - javac = ["@bazel_tools//third_party/java/jdk/langtools:javac_jar"], - javac_supports_workers = 1, - jvm_opts = [ - "-XX:+TieredCompilation", - "-XX:TieredStopAtLevel=1", - "-Xbootclasspath/p:$(location @bazel_tools//third_party/java/jdk/langtools:javac_jar)", - ], - misc = [ - "-XDskipDuplicateBridges=true", - ], - singlejar = ["@bazel_tools//src/tools/singlejar:singlejar"], - source_version = "8", - target_version = "8", -) diff --git a/configs/ubuntu16_04_clang/1.0/BUILD b/configs/ubuntu16_04_clang/1.0/BUILD deleted file mode 100644 index e7b45e4aa..000000000 --- a/configs/ubuntu16_04_clang/1.0/BUILD +++ /dev/null @@ -1,158 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk8", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) - -java_runtime( - name = "jdk10", - srcs = [], - java_home = "/usr/lib/jvm/zulu10.2+3-jdk10.0.1-linux_x64-allmodules", -) - -# Update every time when a new container is available publically. -LATEST_CLANG_VERSION = "r337145" - -# Latest RBE Ubuntu16_04 container with JDK 10 -alias( - name = "rbe_ubuntu1604_jdk10", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION + "_jdk10", -) - -# Latest RBE Ubuntu16_04 container with JDK 8 -alias( - name = "rbe_ubuntu1604_jdk8", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION + "_jdk8", -) - -# Latest RBE Ubuntu16_04 container -alias( - name = "rbe_ubuntu1604", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION, -) - -# We use an additional remote_execution_propertie called "jdk-version" to -# to collect usage of JDK8 and JDK10. - -# ====================== RBE Ubuntu16_04 r337145 targets ====================== - -# RBE Ubuntu16_04 r337145 with JDK 10 -platform( - name = "rbe_ubuntu1604_r337145_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:b348b2e63253d5e2d32613a349747f07dc82b6b1ecfb69e8c7ac81a653b857c2" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Ubuntu16_04 r337145 with JDK 8 -platform( - name = "rbe_ubuntu1604_r337145_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:b348b2e63253d5e2d32613a349747f07dc82b6b1ecfb69e8c7ac81a653b857c2" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Ubuntu16_04 r337145 -platform( - name = "rbe_ubuntu1604_r337145", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:b348b2e63253d5e2d32613a349747f07dc82b6b1ecfb69e8c7ac81a653b857c2" - } - """, -) - -# ====================== RBE Ubuntu16_04 r328903 targets ====================== - -# RBE Ubuntu16_04 r328903 -platform( - name = "rbe_ubuntu1604_r328903", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:59bf0e191a6b5cc1ab62c2224c810681d1326bad5a27b1d36c9f40113e79da7f" - } - """, -) - -# Experimental ubuntu1604 based container with Docker. -platform( - name = "nosla_xenial_docker", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:support_docker", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://gcr.io/asci-toolchain/nosla-xenial-docker@sha256:780a96ba94b7666e31ba9a184e5a1742c3398250d47f5b87b1b4a60f8c41f164" - } - properties: { - name: "dockerSiblingContainers" - value: "true" - } - """, -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/cpp/BUILD deleted file mode 100644 index 02d28a585..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/cpp/BUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/CROSSTOOL deleted file mode 100755 index 9a34d1cc2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/CROSSTOOL +++ /dev/null @@ -1,1158 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '-lgcov' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/CROSSTOOL deleted file mode 100755 index 571e87aac..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/CROSSTOOL +++ /dev/null @@ -1,1159 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '-lgcov' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.13.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/cpp/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/cpp/BUILD deleted file mode 100644 index 9d39213b6..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/cpp/BUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/CROSSTOOL deleted file mode 100755 index 37f149e3f..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/CROSSTOOL +++ /dev/null @@ -1,1155 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/CROSSTOOL deleted file mode 100755 index 45280fa0a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/CROSSTOOL +++ /dev/null @@ -1,1156 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/METADATA deleted file mode 100644 index fd93fb739..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ - marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.14.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/cpp/BUILD deleted file mode 100644 index 1b83e286d..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/cpp/BUILD +++ /dev/null @@ -1,50 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/CROSSTOOL deleted file mode 100755 index 7a2e367ed..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/CROSSTOOL +++ /dev/null @@ -1,1221 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - 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 { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - 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' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/CROSSTOOL deleted file mode 100755 index a460ab925..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/CROSSTOOL +++ /dev/null @@ -1,1222 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - 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: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-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: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - 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 { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - 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' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/METADATA deleted file mode 100644 index ce05746e3..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:d553634f23f7c437ca35bbc4b6f1f38bb81be32b9ef2df4329dcd36762277bf7 diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.15.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/cpp/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/cpp/BUILD deleted file mode 100644 index 89f8e8c06..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/CROSSTOOL deleted file mode 100755 index b21eaff6a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/METADATA deleted file mode 100644 index 51d8fcc5e..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:fbf123ca7c7696f53864da4f7d1d9470f9ef4ebfabc4344f44173d1951faee6f diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/BUILD b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/CROSSTOOL deleted file mode 100755 index c7291ed1d..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/7.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/METADATA b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/METADATA deleted file mode 100644 index 51d8fcc5e..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:fbf123ca7c7696f53864da4f7d1d9470f9ef4ebfabc4344f44173d1951faee6f diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.0/toolchain.bazelrc b/configs/ubuntu16_04_clang/1.0/toolchain.bazelrc deleted file mode 100644 index d3f6b6ca1..000000000 --- a/configs/ubuntu16_04_clang/1.0/toolchain.bazelrc +++ /dev/null @@ -1,43 +0,0 @@ -# This file is auto-generated from release/toolchain.bazelrc.tpl and should not -# be modified directly. - -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.0:jdk8 -build:remote --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.0:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//configs/ubuntu16_04_clang/1.0/bazel_0.16.1/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.0:rbe_ubuntu1604 -build:remote --host_platform=@bazel_toolchains//configs/ubuntu16_04_clang/1.0:rbe_ubuntu1604 -build:remote --platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.0:rbe_ubuntu1604 - -# Experimental configs for sanitizers, use --config=remote --config=remote- (in that order) -# See https://github.com/bazelbuild/bazel/issues/5291. -build:remote-xxsan --copt=-gmlt -build:remote-xxsan --strip=never - -build:remote-asan --config=remote-xxsan -build:remote-asan --copt=-fsanitize=address -build:remote-asan --linkopt=-fsanitize=address - -build:remote-tsan --config=remote-xxsan -build:remote-tsan --copt=-fsanitize=thread -build:remote-tsan --linkopt=-fsanitize=thread - -build:remote-msan --config=remote-xxsan -build:remote-msan --copt=-fsanitize=memory -build:remote-msan --linkopt=-fsanitize=memory -build:remote-msan --cxxopt=--stdlib=libc++ -build:remote-msan --copt=-fsanitize-memory-track-origins -build:remote-msan --host_crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.0/bazel_0.16.1/default:toolchain -build:remote-msan --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.0/bazel_0.16.1/msan:toolchain diff --git a/configs/ubuntu16_04_clang/1.1/BUILD b/configs/ubuntu16_04_clang/1.1/BUILD deleted file mode 100644 index 2e14b3c0f..000000000 --- a/configs/ubuntu16_04_clang/1.1/BUILD +++ /dev/null @@ -1,273 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk8", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) - -java_runtime( - name = "jdk10", - srcs = [], - java_home = "/usr/lib/jvm/zulu10.2+3-jdk10.0.1-linux_x64-allmodules", -) - -java_runtime( - name = "jdk11", - srcs = [], - java_home = "/usr/lib/jvm/11.29.3-ca-jdk11.0.2/reduced", -) - -# Update every time when a new container is available publically. -LATEST_CLANG_VERSION = "r346485" - -# Latest RBE Ubuntu16_04 container with JDK 10 -alias( - name = "rbe_ubuntu1604_jdk10", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION + "_jdk10", -) - -# Latest RBE Ubuntu16_04 container with JDK 8 -alias( - name = "rbe_ubuntu1604_jdk8", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION + "_jdk8", -) - -# Latest RBE Ubuntu16_04 container -alias( - name = "rbe_ubuntu1604", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION, -) - -# We use an additional remote_execution_propertie called "jdk-version" to -# to collect usage of JDK8 and JDK10. - -# ====================== RBE Ubuntu16_04 r340178 targets ====================== - -# RBE Ubuntu16_04 r340178 with JDK 10 -platform( - name = "rbe_ubuntu1604_r340178_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:9bd8ba020af33edb5f11eff0af2f63b3bcb168cd6566d7b27c6685e717787928" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Ubuntu16_04 r340178 with JDK 8 -platform( - name = "rbe_ubuntu1604_r340178_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:9bd8ba020af33edb5f11eff0af2f63b3bcb168cd6566d7b27c6685e717787928" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Ubuntu16_04 r340178 -platform( - name = "rbe_ubuntu1604_r340178", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:9bd8ba020af33edb5f11eff0af2f63b3bcb168cd6566d7b27c6685e717787928" - } - """, -) - -# Experimental ubuntu1604 based container with Docker. -# Based on marketplace.gcr.io/google/rbe-ubuntu16-04:r340178 -platform( - name = "nosla_xenial_docker", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:support_docker", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://gcr.io/asci-toolchain/nosla-xenial-docker@sha256:b4f34255823ae7f95f38712b85013ec26926c8c5b565b0d3f1d32e1295394e9d" - } - properties: { - name: "dockerSiblingContainers" - value: "true" - } - """, -) - -# ====================== RBE Ubuntu16_04 r342117 targets ====================== - -# RBE Ubuntu16_04 r342117 with JDK 10 -platform( - name = "rbe_ubuntu1604_r342117_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f3120a030a19d67626ababdac79cc787e699a1aa924081431285118f87e7b375" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Ubuntu16_04 r342117 with JDK 8 -platform( - name = "rbe_ubuntu1604_r342117_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f3120a030a19d67626ababdac79cc787e699a1aa924081431285118f87e7b375" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Ubuntu16_04 r342117 -platform( - name = "rbe_ubuntu1604_r342117", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f3120a030a19d67626ababdac79cc787e699a1aa924081431285118f87e7b375" - } - """, -) - -# ====================== RBE Ubuntu16_04 r346485 targets ====================== - -# RBE Ubuntu16_04 r346485 with JDK 10 -platform( - name = "rbe_ubuntu1604_r346485_jdk10", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - properties: { - name: "jdk-version" - value:"10" - } - """, -) - -# RBE Ubuntu16_04 r346485 with JDK 8 -platform( - name = "rbe_ubuntu1604_r346485_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Ubuntu16_04 r346485 -platform( - name = "rbe_ubuntu1604_r346485", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - """, -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/cpp/BUILD deleted file mode 100644 index 6cfe0bffe..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/CROSSTOOL deleted file mode 100755 index 9ce9a6eae..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/BUILD deleted file mode 100755 index 678239f3a..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/BUILD +++ /dev/null @@ -1,139 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "ios_x86_64|compiler": ":cc-compiler-ios_x86_64", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# ios crosstool configuration requires a default toolchain for the -# ios_x86_64 cpu. -cc_toolchain( - name = "cc-compiler-ios_x86_64", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-ios_x86_64", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:ios", - ], - toolchain = ":cc-compiler-ios_x86_64", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/CROSSTOOL deleted file mode 100755 index 5822b6214..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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: "local" - toolchain_identifier: "ios_x86_64" -} - -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" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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 C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_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: 'user_link_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-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-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" - action: "c++-link-nodeps-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++-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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } - - - -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.16.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/cpp/BUILD deleted file mode 100644 index 129f2eaa4..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/BUILD deleted file mode 100755 index 2217d8480..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/BUILD +++ /dev/null @@ -1,109 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/CROSSTOOL deleted file mode 100755 index a412faa12..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/CROSSTOOL +++ /dev/null @@ -1,1246 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/BUILD deleted file mode 100755 index 2217d8480..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/BUILD +++ /dev/null @@ -1,109 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/CROSSTOOL deleted file mode 100755 index 99d5797f6..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/CROSSTOOL +++ /dev/null @@ -1,1247 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.17.1/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/cpp/BUILD deleted file mode 100644 index 0b73e5fed..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/CROSSTOOL deleted file mode 100755 index a412faa12..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/CROSSTOOL +++ /dev/null @@ -1,1246 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/CROSSTOOL deleted file mode 100755 index 99d5797f6..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/CROSSTOOL +++ /dev/null @@ -1,1247 +0,0 @@ -# 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: "local" - toolchain_identifier: "stub_armeabi-v7a" -} - -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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.18.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/cpp/BUILD deleted file mode 100644 index 25b1a51c2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/CROSSTOOL deleted file mode 100755 index a55c21b84..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/CROSSTOOL +++ /dev/null @@ -1,1241 +0,0 @@ -# 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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/BUILD deleted file mode 100755 index f43f1d61f..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/CROSSTOOL deleted file mode 100755 index 81cc94225..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/CROSSTOOL +++ /dev/null @@ -1,1242 +0,0 @@ -# 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" -} - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/cpp/BUILD deleted file mode 100644 index e270908a4..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/CROSSTOOL deleted file mode 100755 index 90bd1bb70..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/CROSSTOOL deleted file mode 100755 index 38249bbec..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/CROSSTOOL +++ /dev/null @@ -1,1211 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-B/usr/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - 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" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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" - - # 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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/METADATA deleted file mode 100644 index d1ec2a99e..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:79a24c15949bd5770acac41b444c5c0b7f9723dcbc708c67d87ecf71e32c9126 diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.19.2/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/cpp/BUILD deleted file mode 100644 index 7eeb78829..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/CROSSTOOL deleted file mode 100755 index d2112abb8..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - tool_path {name: "dwp" path: "/usr/bin/dwp" } - tool_path {name: "gcov" path: "/dev/null" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/CROSSTOOL deleted file mode 100755 index 518a2d110..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.20.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/cpp/BUILD deleted file mode 100644 index 49ddb7e7d..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# Copyright 2018 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/CROSSTOOL deleted file mode 100755 index 2d85a07cc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/CROSSTOOL deleted file mode 100755 index 518a2d110..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.21.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/cpp/BUILD deleted file mode 100644 index 19851168f..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/BUILD deleted file mode 100755 index 4bb10b123..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/CROSSTOOL deleted file mode 100755 index 2a9b7bacf..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - expand_if_all_available: 'fdo_profile_path' - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are - # not used in this crosstool - feature { - name: 'legacy_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'legacy_compile_flags' - 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'linkstamp_paths' - iterate_over: 'linkstamp_paths' - flag: '%{linkstamp_paths}' - } - } - } - - feature { - name: 'output_execpath_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'archiver_flags' - flag_set { - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'input_param_flags' - flag_set { - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'interface_library_output_path' - flag: "/IMPLIB:%{interface_library_output_path}" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'libopts' - iterate_over: 'libopts' - flag: '%{libopts}' - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'libraries_to_link' - 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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'user_link_flags' - iterate_over: 'user_link_flags' - flag: '%{user_link_flags}' - } - } - } - feature { - name: 'legacy_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'legacy_link_flags' - iterate_over: 'legacy_link_flags' - flag: '%{legacy_link_flags}' - } - } - } - - feature { - name: 'linker_param_file' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'linker_param_file' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'user_compile_flags' - iterate_over: 'user_compile_flags' - flag: '%{user_compile_flags}' - } - } - } - - feature { - name: 'sysroot' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'sysroot' - iterate_over: 'sysroot' - flag: '--sysroot=%{sysroot}' - } - } - } - - feature { - name: 'unfiltered_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'unfiltered_compile_flags' - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'def_file_path' - 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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/BUILD b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/BUILD deleted file mode 100755 index 4bb10b123..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/CROSSTOOL b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/CROSSTOOL deleted file mode 100755 index e19e65654..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/CROSSTOOL +++ /dev/null @@ -1,1210 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lc++" - linker_flag: "-lc++abi" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu/c++/5.4.0" - cxx_builtin_include_directory: "/usr/include/c++/5.4.0/backward" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - expand_if_all_available: 'fdo_profile_path' - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are - # not used in this crosstool - feature { - name: 'legacy_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'legacy_compile_flags' - 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'linkstamp_paths' - iterate_over: 'linkstamp_paths' - flag: '%{linkstamp_paths}' - } - } - } - - feature { - name: 'output_execpath_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'archiver_flags' - flag_set { - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'input_param_flags' - flag_set { - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'interface_library_output_path' - flag: "/IMPLIB:%{interface_library_output_path}" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'libopts' - iterate_over: 'libopts' - flag: '%{libopts}' - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'libraries_to_link' - 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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'user_link_flags' - iterate_over: 'user_link_flags' - flag: '%{user_link_flags}' - } - } - } - feature { - name: 'legacy_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'legacy_link_flags' - iterate_over: 'legacy_link_flags' - flag: '%{legacy_link_flags}' - } - } - } - - feature { - name: 'linker_param_file' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'linker_param_file' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'user_compile_flags' - iterate_over: 'user_compile_flags' - flag: '%{user_compile_flags}' - } - } - } - - feature { - name: 'sysroot' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'sysroot' - iterate_over: 'sysroot' - flag: '--sysroot=%{sysroot}' - } - } - } - - feature { - name: 'unfiltered_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'unfiltered_compile_flags' - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'def_file_path' - 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 } -} diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/METADATA b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/METADATA deleted file mode 100644 index 18b02a8e2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:9fe84f7c726419ab77a9680887ec4a518d1910a28284c2955620258db01c7aae diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.1/toolchain.bazelrc b/configs/ubuntu16_04_clang/1.1/toolchain.bazelrc deleted file mode 100644 index 8e0103d51..000000000 --- a/configs/ubuntu16_04_clang/1.1/toolchain.bazelrc +++ /dev/null @@ -1,43 +0,0 @@ -# This file is auto-generated from release/toolchain.bazelrc.tpl and should not -# be modified directly. - -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:jdk8 -build:remote --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.22.0/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:rbe_ubuntu1604 -build:remote --host_platform=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:rbe_ubuntu1604 -build:remote --platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.1:rbe_ubuntu1604 - -# Experimental configs for sanitizers, use --config=remote --config=remote- (in that order) -# See https://github.com/bazelbuild/bazel/issues/5291. -build:remote-xxsan --copt=-gmlt -build:remote-xxsan --strip=never - -build:remote-asan --config=remote-xxsan -build:remote-asan --copt=-fsanitize=address -build:remote-asan --linkopt=-fsanitize=address - -build:remote-tsan --config=remote-xxsan -build:remote-tsan --copt=-fsanitize=thread -build:remote-tsan --linkopt=-fsanitize=thread - -build:remote-msan --config=remote-xxsan -build:remote-msan --copt=-fsanitize=memory -build:remote-msan --linkopt=-fsanitize=memory -build:remote-msan --cxxopt=--stdlib=libc++ -build:remote-msan --copt=-fsanitize-memory-track-origins -build:remote-msan --host_crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.22.0/default:toolchain -build:remote-msan --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.1/bazel_0.22.0/msan:toolchain diff --git a/configs/ubuntu16_04_clang/1.2/BUILD b/configs/ubuntu16_04_clang/1.2/BUILD deleted file mode 100644 index 345a94fba..000000000 --- a/configs/ubuntu16_04_clang/1.2/BUILD +++ /dev/null @@ -1,142 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk8", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) - -java_runtime( - name = "jdk11", - srcs = [], - java_home = "/usr/lib/jvm/11.29.3-ca-jdk11.0.2/reduced", -) - -# This platform is used in CI for rules_docker and bazel-toolchains. -platform( - name = "nosla_xenial_docker", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:support_docker", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://gcr.io/asci-toolchain/nosla-ubuntu16_04-bazel-docker-gcloud@sha256:ab88c40463d782acc4289948fe0b1577de0b143a753cea35cac34535203f8ca7" - } - properties: { - name: "dockerSiblingContainers" - value: "true" - } - properties: { - name: "dockerNetwork" - value: "standard" - } - """, -) - -# Update every time when a new container is available publically. -LATEST_CLANG_VERSION = "r352865" - -# Latest RBE Ubuntu16_04 container with JDK 11 -alias( - name = "rbe_ubuntu1604_jdk11", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION + "_jdk1", -) - -# Latest RBE Ubuntu16_04 container with JDK 8 -alias( - name = "rbe_ubuntu1604_jdk8", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION + "_jdk8", -) - -# Latest RBE Ubuntu16_04 container -alias( - name = "rbe_ubuntu1604", - actual = ":rbe_ubuntu1604_" + LATEST_CLANG_VERSION, -) - -# We use an additional remote_execution_propertie called "jdk-version" to -# to collect usage of JDK8 and JDK11. - -# ====================== RBE Ubuntu16_04 r352865 targets ====================== - -# RBE Ubuntu16_04 r352865 with JDK 11 -platform( - name = "rbe_ubuntu1604_r352865_jdk11", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729" - } - properties: { - name: "jdk-version" - value:"11" - } - """, -) - -# RBE Ubuntu16_04 r352865 with JDK 8 -platform( - name = "rbe_ubuntu1604_r352865_jdk8", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729" - } - properties: { - name: "jdk-version" - value:"8" - } - """, -) - -# RBE Ubuntu16_04 r352865 -platform( - name = "rbe_ubuntu1604_r352865", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729" - } - """, -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/cpp/BUILD deleted file mode 100644 index 03d12b70c..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/BUILD deleted file mode 100755 index 8bc7a86c2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/METADATA b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/METADATA deleted file mode 100644 index be56c551b..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:963ea21d047664257c91fb0e05d9a6e9acf1481ea1874736af4d4ceed1e02a0c diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/cc_toolchain_config.bzl deleted file mode 100755 index faf6cc43e..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/cc_toolchain_config.bzl +++ /dev/null @@ -1,1731 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/BUILD deleted file mode 100755 index 8bc7a86c2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/METADATA b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/METADATA deleted file mode 100644 index be56c551b..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:963ea21d047664257c91fb0e05d9a6e9acf1481ea1874736af4d4ceed1e02a0c diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/cc_toolchain_config.bzl deleted file mode 100755 index a2ae98933..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1732 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lc++", - "-lc++abi", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.23.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/cpp/BUILD deleted file mode 100644 index 00a87ecaf..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/BUILD deleted file mode 100755 index 5cc9abde9..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|clang": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/METADATA b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/METADATA deleted file mode 100644 index be56c551b..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:963ea21d047664257c91fb0e05d9a6e9acf1481ea1874736af4d4ceed1e02a0c diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/cc_toolchain_config.bzl deleted file mode 100755 index e6297eec5..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/cc_toolchain_config.bzl +++ /dev/null @@ -1,1733 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/BUILD deleted file mode 100755 index 5cc9abde9..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|clang": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/METADATA b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/METADATA deleted file mode 100644 index be56c551b..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:963ea21d047664257c91fb0e05d9a6e9acf1481ea1874736af4d4ceed1e02a0c diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/cc_toolchain_config.bzl deleted file mode 100755 index 2af3542c4..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1734 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lc++", - "-lc++abi", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.24.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/cpp/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/cpp/BUILD deleted file mode 100644 index 27ffdad4f..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/cpp/BUILD +++ /dev/null @@ -1,54 +0,0 @@ -# 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-default", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-msan", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:xenial", - "//constraints/sanitizers:support_msan", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/BUILD deleted file mode 100755 index 5cc9abde9..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|clang": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/METADATA b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/METADATA deleted file mode 100644 index 3ba02f947..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:ed21de14f213a6dfe55c50663ae5f95c545ae0f8fce065a70ffe6d8bb260d8d6 diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/cc_toolchain_config.bzl deleted file mode 100755 index df57f3cd2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/cc_toolchain_config.bzl +++ /dev/null @@ -1,1746 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/BUILD b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/BUILD deleted file mode 100755 index 5cc9abde9..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|clang": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/METADATA b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/METADATA deleted file mode 100644 index 3ba02f947..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/METADATA +++ /dev/null @@ -1 +0,0 @@ -marketplace.gcr.io/google/clang-ubuntu@sha256:ed21de14f213a6dfe55c50663ae5f95c545ae0f8fce065a70ffe6d8bb260d8d6 diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/cc_toolchain_config.bzl deleted file mode 100755 index 7e3ce59c1..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/cc_toolchain_config.bzl +++ /dev/null @@ -1,1747 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lc++", - "-lc++abi", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/cc_wrapper.sh b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/1.2/toolchain.bazelrc b/configs/ubuntu16_04_clang/1.2/toolchain.bazelrc deleted file mode 100644 index 55b2b7fc3..000000000 --- a/configs/ubuntu16_04_clang/1.2/toolchain.bazelrc +++ /dev/null @@ -1,43 +0,0 @@ -# This file is auto-generated from release/toolchain.bazelrc.tpl and should not -# be modified directly. - -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:jdk8 -build:remote --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_0.25.0/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:rbe_ubuntu1604 -build:remote --host_platform=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:rbe_ubuntu1604 -build:remote --platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:rbe_ubuntu1604 - -# Experimental configs for sanitizers, use --config=remote --config=remote- (in that order) -# See https://github.com/bazelbuild/bazel/issues/5291. -build:remote-xxsan --copt=-gmlt -build:remote-xxsan --strip=never - -build:remote-asan --config=remote-xxsan -build:remote-asan --copt=-fsanitize=address -build:remote-asan --linkopt=-fsanitize=address - -build:remote-tsan --config=remote-xxsan -build:remote-tsan --copt=-fsanitize=thread -build:remote-tsan --linkopt=-fsanitize=thread - -build:remote-msan --config=remote-xxsan -build:remote-msan --copt=-fsanitize=memory -build:remote-msan --linkopt=-fsanitize=memory -build:remote-msan --cxxopt=--stdlib=libc++ -build:remote-msan --copt=-fsanitize-memory-track-origins -build:remote-msan --host_crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_0.25.0/default:toolchain -build:remote-msan --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_0.25.0/msan:toolchain diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 83047a2e1..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1133 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/config/BUILD deleted file mode 100644 index e44afe9bd..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:06f8f8e9f97daa1c15466536dc2a7ae6641d16962d7b58a393af8060e460f571" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_0.29.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/config/BUILD deleted file mode 100644 index d2da94f8a..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:3c104745837918f854415f78f63afe7f680f0876dda837058c38e6eee54e253c" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/BUILD deleted file mode 100755 index 2269626bd..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|clang": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "ld": "/usr/bin/ld", - "cpp": "/usr/bin/cpp", - "gcc": "/usr/local/bin/clang", - "dwp": "/usr/bin/dwp", - "gcov": "/dev/null", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index c5fd79eae..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(mandatory = True), - "toolchain_identifier": attr.string(mandatory = True), - "host_system_name": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "target_libc": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "abi_libc_version": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "tool_paths": attr.string_dict(), - "compile_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "cxx_flags": attr.string_list(), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_link_flags": attr.string_list(), - "unfiltered_compile_flags": attr.string_list(), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/config/BUILD deleted file mode 100644 index 6ce07fd70..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:3c104745837918f854415f78f63afe7f680f0876dda837058c38e6eee54e253c" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.0.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/config/BUILD deleted file mode 100644 index 789e0a415..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87d0fa2c56558f2f0d05116e6142b29d9ee509776be5fa9794a57f281b75b14e" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.1.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/config/BUILD deleted file mode 100644 index 4f530416c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87d0fa2c56558f2f0d05116e6142b29d9ee509776be5fa9794a57f281b75b14e" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/config/BUILD deleted file mode 100644 index 2aee5f30b..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:6ad1d0883742bfd30eba81e292c135b95067a6706f3587498374a083b7073cb9" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_1.2.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/config/BUILD deleted file mode 100644 index 09befce6d..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:ac36d37616b044ee77813fc7cd36607a6dc43c65357f3e2ca39f3ad723e426f6" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.0.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/BUILD deleted file mode 100755 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/builtin_include_directory_paths deleted file mode 100755 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/config/BUILD deleted file mode 100644 index c743e7a43..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:ac36d37616b044ee77813fc7cd36607a6dc43c65357f3e2ca39f3ad723e426f6" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/BUILD deleted file mode 100644 index 59e2c780c..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/10.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100644 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/builtin_include_directory_paths deleted file mode 100644 index 4df2ca457..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/10.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/cc_toolchain_config.bzl deleted file mode 100644 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/cc_wrapper.sh deleted file mode 100644 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/config/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/config/BUILD deleted file mode 100644 index 07338c467..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:1062b3c9002e6c09e31d3463fc5c24b0d2212f706733404918e18cff8f66dc5c" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/java/BUILD b/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/10.0.0/bazel_2.1.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/BUILD deleted file mode 100755 index aeb15a99d..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/builtin_include_directory_paths deleted file mode 100755 index d069d1f15..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/config/BUILD deleted file mode 100644 index 5ef6c2b79..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:b4dad0bfc4951d619229ab15343a311f2415a16ef83bcaa55b44f4e2bf1cf635" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.1.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/BUILD deleted file mode 100755 index 6137c1836..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/builtin_include_directory_paths deleted file mode 100755 index d069d1f15..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/config/BUILD deleted file mode 100644 index d16024f49..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:ef6ab043a2b570fbfb14121c78248f1ba496fab78df017acbb121fcd01731e74" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_2.2.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/BUILD deleted file mode 100755 index 181acbd64..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/BUILD +++ /dev/null @@ -1,164 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/config/BUILD deleted file mode 100644 index 1f7ad85a4..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:5464e3e83dc656fc6e4eae6a01f5c2645f1f7e95854b3802b85e86484132d90e" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.0.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/BUILD deleted file mode 100755 index 181acbd64..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/BUILD +++ /dev/null @@ -1,164 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c702b141e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/config/BUILD deleted file mode 100644 index 08ba2f26a..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:b516a2d69537cb40a7c6a7d92d0008abb29fba8725243772bdaf2c83f1be2272" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.1.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/BUILD deleted file mode 100755 index 181acbd64..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/BUILD +++ /dev/null @@ -1,164 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 2332f74f6..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/config/BUILD deleted file mode 100644 index 1c426a7e0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:5e750dd878df9fcf4e185c6f52b9826090f6e532b097f286913a428290622332" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.2.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/module.modulemap deleted file mode 100755 index e34ffd148..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc/module.modulemap +++ /dev/null @@ -1,4312 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/config/BUILD deleted file mode 100644 index 8e168246b..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:169876b30f3f8ec0430720d319c7eb8a66268501ca62e2acd4e0e7867d5883df" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/module.modulemap deleted file mode 100755 index e34ffd148..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc/module.modulemap +++ /dev/null @@ -1,4312 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/config/BUILD deleted file mode 100644 index bcfd2a777..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:1a8ed713f40267bb51fe17de012fa631a20c52df818ccb317aaed2ee068dfc61" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.3.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/config/BUILD deleted file mode 100644 index 03829ac17..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:a015ac77d435c0a68b7339c96672416649a536cfe2dd8316f3a6d14f007ab8e6" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.4.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/config/BUILD deleted file mode 100644 index c82d39d20..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/config/BUILD deleted file mode 100644 index 379f00e2f..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.5.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/config/BUILD deleted file mode 100644 index 4554b8efa..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.6.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/config/BUILD deleted file mode 100644 index bc2f99400..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/config/BUILD deleted file mode 100644 index 1c4ad432c..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/BUILD deleted file mode 100755 index d7f506b52..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/BUILD +++ /dev/null @@ -1,165 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9b0a97c2e..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1257 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/config/BUILD deleted file mode 100644 index 55af8a334..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_3.7.2/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/BUILD deleted file mode 100755 index c9a509cd1..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/BUILD +++ /dev/null @@ -1,167 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-BSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - module_map = ":module.modulemap", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/11.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/local/lib/clang/11.0.0/share", - "/usr/include/c++/5.4.0", - "/usr/include/x86_64-linux-gnu/c++/5.4.0", - "/usr/include/c++/5.4.0/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - ], - link_libs = [ - "-lstdc++", - "-lm", - ], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "llvm-cov": "/usr/local/bin/llvm-cov", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/builtin_include_directory_paths deleted file mode 100755 index 8a9838286..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,14 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/11.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/local/lib/clang/11.0.0/share -/usr/include/c++/5.4.0 -/usr/include/x86_64-linux-gnu/c++/5.4.0 -/usr/include/c++/5.4.0/backward diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 2bfdce684..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1272 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -def layering_check_features(compiler): - if compiler != "clang": - return [] - return [ - feature( - name = "use_module_maps", - requires = [feature_set(features = ["module_maps"])], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fmodule-name=%{module_name}", - "-fmodule-map-file=%{module_map_file}", - ], - ), - ], - ), - ], - ), - - # Tell blaze we support module maps in general, so they will be generated - # for all c/c++ rules. - # Note: not all C++ rules support module maps; thus, do not imply this - # feature from other features - instead, require it. - feature(name = "module_maps", enabled = True), - feature( - name = "layering_check", - implies = ["use_module_maps"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = [ - "-fmodules-strict-decluse", - "-Wprivate-header", - ]), - flag_group( - iterate_over = "dependent_module_map_files", - flags = [ - "-fmodule-map-file=%{dependent_module_map_files}", - ], - ), - ], - ), - ], - ), - ] - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - llvm_cov_action = action_config( - action_name = ACTION_NAMES.llvm_cov, - tools = [ - tool( - path = ctx.attr.tool_paths["llvm-cov"], - ), - ], - ) - - action_configs.append(llvm_cov_action) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Wno-profile-instr-unprofiled", - "-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-mllvm", - "-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] + layering_check_features(ctx.attr.compiler) - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - builtin_sysroot = ctx.attr.builtin_sysroot, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "builtin_sysroot": attr.string(), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/module.modulemap b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/module.modulemap deleted file mode 100755 index e9db2c042..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc/module.modulemap +++ /dev/null @@ -1,4313 +0,0 @@ -module "crosstool" [system] { - textual header "/usr/local/include/c++/v1/__bit_reference" - textual header "/usr/local/include/c++/v1/__bsd_locale_defaults.h" - textual header "/usr/local/include/c++/v1/__bsd_locale_fallbacks.h" - textual header "/usr/local/include/c++/v1/__config" - textual header "/usr/local/include/c++/v1/__cxxabi_config.h" - textual header "/usr/local/include/c++/v1/__debug" - textual header "/usr/local/include/c++/v1/__errc" - textual header "/usr/local/include/c++/v1/__functional_03" - textual header "/usr/local/include/c++/v1/__functional_base" - textual header "/usr/local/include/c++/v1/__functional_base_03" - textual header "/usr/local/include/c++/v1/__hash_table" - textual header "/usr/local/include/c++/v1/__libcpp_version" - textual header "/usr/local/include/c++/v1/__locale" - textual header "/usr/local/include/c++/v1/__mutex_base" - textual header "/usr/local/include/c++/v1/__node_handle" - textual header "/usr/local/include/c++/v1/__nullptr" - textual header "/usr/local/include/c++/v1/__split_buffer" - textual header "/usr/local/include/c++/v1/__sso_allocator" - textual header "/usr/local/include/c++/v1/__std_stream" - textual header "/usr/local/include/c++/v1/__string" - textual header "/usr/local/include/c++/v1/__threading_support" - textual header "/usr/local/include/c++/v1/__tree" - textual header "/usr/local/include/c++/v1/__tuple" - textual header "/usr/local/include/c++/v1/__undef_macros" - textual header "/usr/local/include/c++/v1/algorithm" - textual header "/usr/local/include/c++/v1/any" - textual header "/usr/local/include/c++/v1/array" - textual header "/usr/local/include/c++/v1/atomic" - textual header "/usr/local/include/c++/v1/barrier" - textual header "/usr/local/include/c++/v1/bit" - textual header "/usr/local/include/c++/v1/bitset" - textual header "/usr/local/include/c++/v1/cassert" - textual header "/usr/local/include/c++/v1/ccomplex" - textual header "/usr/local/include/c++/v1/cctype" - textual header "/usr/local/include/c++/v1/cerrno" - textual header "/usr/local/include/c++/v1/cfenv" - textual header "/usr/local/include/c++/v1/cfloat" - textual header "/usr/local/include/c++/v1/charconv" - textual header "/usr/local/include/c++/v1/chrono" - textual header "/usr/local/include/c++/v1/cinttypes" - textual header "/usr/local/include/c++/v1/ciso646" - textual header "/usr/local/include/c++/v1/climits" - textual header "/usr/local/include/c++/v1/clocale" - textual header "/usr/local/include/c++/v1/cmath" - textual header "/usr/local/include/c++/v1/codecvt" - textual header "/usr/local/include/c++/v1/compare" - textual header "/usr/local/include/c++/v1/complex" - textual header "/usr/local/include/c++/v1/complex.h" - textual header "/usr/local/include/c++/v1/concepts" - textual header "/usr/local/include/c++/v1/condition_variable" - textual header "/usr/local/include/c++/v1/csetjmp" - textual header "/usr/local/include/c++/v1/csignal" - textual header "/usr/local/include/c++/v1/cstdarg" - textual header "/usr/local/include/c++/v1/cstdbool" - textual header "/usr/local/include/c++/v1/cstddef" - textual header "/usr/local/include/c++/v1/cstdint" - textual header "/usr/local/include/c++/v1/cstdio" - textual header "/usr/local/include/c++/v1/cstdlib" - textual header "/usr/local/include/c++/v1/cstring" - textual header "/usr/local/include/c++/v1/ctgmath" - textual header "/usr/local/include/c++/v1/ctime" - textual header "/usr/local/include/c++/v1/ctype.h" - textual header "/usr/local/include/c++/v1/cwchar" - textual header "/usr/local/include/c++/v1/cwctype" - textual header "/usr/local/include/c++/v1/cxxabi.h" - textual header "/usr/local/include/c++/v1/deque" - textual header "/usr/local/include/c++/v1/errno.h" - textual header "/usr/local/include/c++/v1/exception" - textual header "/usr/local/include/c++/v1/execution" - textual header "/usr/local/include/c++/v1/experimental/__config" - textual header "/usr/local/include/c++/v1/experimental/__memory" - textual header "/usr/local/include/c++/v1/experimental/algorithm" - textual header "/usr/local/include/c++/v1/experimental/coroutine" - textual header "/usr/local/include/c++/v1/experimental/deque" - textual header "/usr/local/include/c++/v1/experimental/filesystem" - textual header "/usr/local/include/c++/v1/experimental/forward_list" - textual header "/usr/local/include/c++/v1/experimental/functional" - textual header "/usr/local/include/c++/v1/experimental/iterator" - textual header "/usr/local/include/c++/v1/experimental/list" - textual header "/usr/local/include/c++/v1/experimental/map" - textual header "/usr/local/include/c++/v1/experimental/memory_resource" - textual header "/usr/local/include/c++/v1/experimental/propagate_const" - textual header "/usr/local/include/c++/v1/experimental/regex" - textual header "/usr/local/include/c++/v1/experimental/set" - textual header "/usr/local/include/c++/v1/experimental/simd" - textual header "/usr/local/include/c++/v1/experimental/string" - textual header "/usr/local/include/c++/v1/experimental/type_traits" - textual header "/usr/local/include/c++/v1/experimental/unordered_map" - textual header "/usr/local/include/c++/v1/experimental/unordered_set" - textual header "/usr/local/include/c++/v1/experimental/utility" - textual header "/usr/local/include/c++/v1/experimental/vector" - textual header "/usr/local/include/c++/v1/ext/__hash" - textual header "/usr/local/include/c++/v1/ext/hash_map" - textual header "/usr/local/include/c++/v1/ext/hash_set" - textual header "/usr/local/include/c++/v1/fenv.h" - textual header "/usr/local/include/c++/v1/filesystem" - textual header "/usr/local/include/c++/v1/float.h" - textual header "/usr/local/include/c++/v1/forward_list" - textual header "/usr/local/include/c++/v1/fstream" - textual header "/usr/local/include/c++/v1/functional" - textual header "/usr/local/include/c++/v1/future" - textual header "/usr/local/include/c++/v1/initializer_list" - textual header "/usr/local/include/c++/v1/inttypes.h" - textual header "/usr/local/include/c++/v1/iomanip" - textual header "/usr/local/include/c++/v1/ios" - textual header "/usr/local/include/c++/v1/iosfwd" - textual header "/usr/local/include/c++/v1/iostream" - textual header "/usr/local/include/c++/v1/istream" - textual header "/usr/local/include/c++/v1/iterator" - textual header "/usr/local/include/c++/v1/latch" - textual header "/usr/local/include/c++/v1/limits" - textual header "/usr/local/include/c++/v1/limits.h" - textual header "/usr/local/include/c++/v1/list" - textual header "/usr/local/include/c++/v1/locale" - textual header "/usr/local/include/c++/v1/locale.h" - textual header "/usr/local/include/c++/v1/map" - textual header "/usr/local/include/c++/v1/math.h" - textual header "/usr/local/include/c++/v1/memory" - textual header "/usr/local/include/c++/v1/module.modulemap" - textual header "/usr/local/include/c++/v1/mutex" - textual header "/usr/local/include/c++/v1/new" - textual header "/usr/local/include/c++/v1/numeric" - textual header "/usr/local/include/c++/v1/optional" - textual header "/usr/local/include/c++/v1/ostream" - textual header "/usr/local/include/c++/v1/queue" - textual header "/usr/local/include/c++/v1/random" - textual header "/usr/local/include/c++/v1/ratio" - textual header "/usr/local/include/c++/v1/regex" - textual header "/usr/local/include/c++/v1/scoped_allocator" - textual header "/usr/local/include/c++/v1/semaphore" - textual header "/usr/local/include/c++/v1/set" - textual header "/usr/local/include/c++/v1/setjmp.h" - textual header "/usr/local/include/c++/v1/shared_mutex" - textual header "/usr/local/include/c++/v1/span" - textual header "/usr/local/include/c++/v1/sstream" - textual header "/usr/local/include/c++/v1/stack" - textual header "/usr/local/include/c++/v1/stdbool.h" - textual header "/usr/local/include/c++/v1/stddef.h" - textual header "/usr/local/include/c++/v1/stdexcept" - textual header "/usr/local/include/c++/v1/stdint.h" - textual header "/usr/local/include/c++/v1/stdio.h" - textual header "/usr/local/include/c++/v1/stdlib.h" - textual header "/usr/local/include/c++/v1/streambuf" - textual header "/usr/local/include/c++/v1/string" - textual header "/usr/local/include/c++/v1/string.h" - textual header "/usr/local/include/c++/v1/string_view" - textual header "/usr/local/include/c++/v1/strstream" - textual header "/usr/local/include/c++/v1/support/android/locale_bionic.h" - textual header "/usr/local/include/c++/v1/support/fuchsia/xlocale.h" - textual header "/usr/local/include/c++/v1/support/ibm/limits.h" - textual header "/usr/local/include/c++/v1/support/ibm/locale_mgmt_aix.h" - textual header "/usr/local/include/c++/v1/support/ibm/support.h" - textual header "/usr/local/include/c++/v1/support/ibm/xlocale.h" - textual header "/usr/local/include/c++/v1/support/musl/xlocale.h" - textual header "/usr/local/include/c++/v1/support/newlib/xlocale.h" - textual header "/usr/local/include/c++/v1/support/solaris/floatingpoint.h" - textual header "/usr/local/include/c++/v1/support/solaris/wchar.h" - textual header "/usr/local/include/c++/v1/support/solaris/xlocale.h" - textual header "/usr/local/include/c++/v1/support/win32/limits_msvc_win32.h" - textual header "/usr/local/include/c++/v1/support/win32/locale_win32.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__nop_locale_mgmt.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__posix_l_fallback.h" - textual header "/usr/local/include/c++/v1/support/xlocale/__strtonum_fallback.h" - textual header "/usr/local/include/c++/v1/system_error" - textual header "/usr/local/include/c++/v1/tgmath.h" - textual header "/usr/local/include/c++/v1/thread" - textual header "/usr/local/include/c++/v1/tuple" - textual header "/usr/local/include/c++/v1/type_traits" - textual header "/usr/local/include/c++/v1/typeindex" - textual header "/usr/local/include/c++/v1/typeinfo" - textual header "/usr/local/include/c++/v1/unordered_map" - textual header "/usr/local/include/c++/v1/unordered_set" - textual header "/usr/local/include/c++/v1/utility" - textual header "/usr/local/include/c++/v1/valarray" - textual header "/usr/local/include/c++/v1/variant" - textual header "/usr/local/include/c++/v1/vector" - textual header "/usr/local/include/c++/v1/version" - textual header "/usr/local/include/c++/v1/wchar.h" - textual header "/usr/local/include/c++/v1/wctype.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_builtin_vars.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_cmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_complex_builtins.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_intrinsics.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_libdevice_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_math_forward_declares.h" - textual header "/usr/local/lib/clang/11.0.0/include/__clang_cuda_runtime_wrapper.h" - textual header "/usr/local/lib/clang/11.0.0/include/__stddef_max_align_t.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_aes.h" - textual header "/usr/local/lib/clang/11.0.0/include/__wmmintrin_pclmul.h" - textual header "/usr/local/lib/clang/11.0.0/include/adxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/altivec.h" - textual header "/usr/local/lib/clang/11.0.0/include/ammintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm64intr.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_acle.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_bf16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cde.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_cmse.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_fp16.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_mve.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_neon.h" - textual header "/usr/local/lib/clang/11.0.0/include/arm_sve.h" - textual header "/usr/local/lib/clang/11.0.0/include/armintr.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512bwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512cdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512dqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512erintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512fintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512ifmavlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512pfintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vbmivlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbf16intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbitalgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlbwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlcdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vldqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvbmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vlvp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vnniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vp2intersectintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avx512vpopcntdqvlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/avxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmi2intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/bmiintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cet.h" - textual header "/usr/local/lib/clang/11.0.0/include/cetintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cldemoteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clflushoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clwbintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/clzerointrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/cpuid.h" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/algorithm" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/complex" - textual header "/usr/local/lib/clang/11.0.0/include/cuda_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/enqcmdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/f16cintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/float.h" - textual header "/usr/local/lib/clang/11.0.0/include/fma4intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fmaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/fuzzer/FuzzedDataProvider.h" - textual header "/usr/local/lib/clang/11.0.0/include/fxsrintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/gfniintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/htmxlintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ia32intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/immintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/inttypes.h" - textual header "/usr/local/lib/clang/11.0.0/include/invpcidintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/iso646.h" - textual header "/usr/local/lib/clang/11.0.0/include/limits.h" - textual header "/usr/local/lib/clang/11.0.0/include/lwpintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/lzcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm3dnow.h" - textual header "/usr/local/lib/clang/11.0.0/include/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/module.modulemap" - textual header "/usr/local/lib/clang/11.0.0/include/movdirintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/msa.h" - textual header "/usr/local/lib/clang/11.0.0/include/mwaitxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/nmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c-base.h" - textual header "/usr/local/lib/clang/11.0.0/include/opencl-c.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/__clang_openmp_device_functions.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/cmath" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/math.h" - textual header "/usr/local/lib/clang/11.0.0/include/openmp_wrappers/new" - textual header "/usr/local/lib/clang/11.0.0/include/pconfigintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pkuintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/popcntintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/emmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mm_malloc.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/mmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/pmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/ppc_wrappers/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/prfchwintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/profile/InstrProfData.inc" - textual header "/usr/local/lib/clang/11.0.0/include/ptwriteintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rdseedintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/rtmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/s390intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/allocator_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/asan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/common_interface_defs.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/coverage_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/dfsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/hwasan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/linux_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/lsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/msan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/netbsd_syscall_hooks.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/scudo_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/tsan_interface_atomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/sanitizer/ubsan_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/serializeintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/sgxintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/shaintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/smmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdalign.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdarg.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdatomic.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdbool.h" - textual header "/usr/local/lib/clang/11.0.0/include/stddef.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdint.h" - textual header "/usr/local/lib/clang/11.0.0/include/stdnoreturn.h" - textual header "/usr/local/lib/clang/11.0.0/include/tbmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tgmath.h" - textual header "/usr/local/lib/clang/11.0.0/include/tmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/tsxldtrkintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/unwind.h" - textual header "/usr/local/lib/clang/11.0.0/include/vadefs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vaesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/varargs.h" - textual header "/usr/local/lib/clang/11.0.0/include/vecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/vpclmulqdqintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/waitpkgintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wasm_simd128.h" - textual header "/usr/local/lib/clang/11.0.0/include/wbnoinvdintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/wmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/x86intrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xmmintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xopintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_log_interface.h" - textual header "/usr/local/lib/clang/11.0.0/include/xray/xray_records.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavecintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsaveoptintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xsavesintrin.h" - textual header "/usr/local/lib/clang/11.0.0/include/xtestintrin.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/_G_config.h" - textual header "/usr/include/aio.h" - textual header "/usr/include/aliases.h" - textual header "/usr/include/alloca.h" - textual header "/usr/include/ar.h" - textual header "/usr/include/argp.h" - textual header "/usr/include/argz.h" - textual header "/usr/include/arpa/ftp.h" - textual header "/usr/include/arpa/inet.h" - textual header "/usr/include/arpa/nameser.h" - textual header "/usr/include/arpa/nameser_compat.h" - textual header "/usr/include/arpa/telnet.h" - textual header "/usr/include/arpa/tftp.h" - textual header "/usr/include/asm-generic/auxvec.h" - textual header "/usr/include/asm-generic/bitsperlong.h" - textual header "/usr/include/asm-generic/errno-base.h" - textual header "/usr/include/asm-generic/errno.h" - textual header "/usr/include/asm-generic/fcntl.h" - textual header "/usr/include/asm-generic/int-l64.h" - textual header "/usr/include/asm-generic/int-ll64.h" - textual header "/usr/include/asm-generic/ioctl.h" - textual header "/usr/include/asm-generic/ioctls.h" - textual header "/usr/include/asm-generic/ipcbuf.h" - textual header "/usr/include/asm-generic/kvm_para.h" - textual header "/usr/include/asm-generic/mman-common.h" - textual header "/usr/include/asm-generic/mman.h" - textual header "/usr/include/asm-generic/msgbuf.h" - textual header "/usr/include/asm-generic/param.h" - textual header "/usr/include/asm-generic/poll.h" - textual header "/usr/include/asm-generic/posix_types.h" - textual header "/usr/include/asm-generic/resource.h" - textual header "/usr/include/asm-generic/sembuf.h" - textual header "/usr/include/asm-generic/setup.h" - textual header "/usr/include/asm-generic/shmbuf.h" - textual header "/usr/include/asm-generic/shmparam.h" - textual header "/usr/include/asm-generic/siginfo.h" - textual header "/usr/include/asm-generic/signal-defs.h" - textual header "/usr/include/asm-generic/signal.h" - textual header "/usr/include/asm-generic/socket.h" - textual header "/usr/include/asm-generic/sockios.h" - textual header "/usr/include/asm-generic/stat.h" - textual header "/usr/include/asm-generic/statfs.h" - textual header "/usr/include/asm-generic/swab.h" - textual header "/usr/include/asm-generic/termbits.h" - textual header "/usr/include/asm-generic/termios.h" - textual header "/usr/include/asm-generic/types.h" - textual header "/usr/include/asm-generic/ucontext.h" - textual header "/usr/include/asm-generic/unistd.h" - textual header "/usr/include/assert.h" - textual header "/usr/include/byteswap.h" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/c++/5/algorithm" - textual header "/usr/include/c++/5/array" - textual header "/usr/include/c++/5/atomic" - textual header "/usr/include/c++/5/backward/auto_ptr.h" - textual header "/usr/include/c++/5/backward/backward_warning.h" - textual header "/usr/include/c++/5/backward/binders.h" - textual header "/usr/include/c++/5/backward/hash_fun.h" - textual header "/usr/include/c++/5/backward/hash_map" - textual header "/usr/include/c++/5/backward/hash_set" - textual header "/usr/include/c++/5/backward/hashtable.h" - textual header "/usr/include/c++/5/backward/strstream" - textual header "/usr/include/c++/5/bits/algorithmfwd.h" - textual header "/usr/include/c++/5/bits/alloc_traits.h" - textual header "/usr/include/c++/5/bits/allocated_ptr.h" - textual header "/usr/include/c++/5/bits/allocator.h" - textual header "/usr/include/c++/5/bits/atomic_base.h" - textual header "/usr/include/c++/5/bits/atomic_futex.h" - textual header "/usr/include/c++/5/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5/bits/basic_ios.h" - textual header "/usr/include/c++/5/bits/basic_ios.tcc" - textual header "/usr/include/c++/5/bits/basic_string.h" - textual header "/usr/include/c++/5/bits/basic_string.tcc" - textual header "/usr/include/c++/5/bits/boost_concept_check.h" - textual header "/usr/include/c++/5/bits/c++0x_warning.h" - textual header "/usr/include/c++/5/bits/c++14_warning.h" - textual header "/usr/include/c++/5/bits/char_traits.h" - textual header "/usr/include/c++/5/bits/codecvt.h" - textual header "/usr/include/c++/5/bits/concept_check.h" - textual header "/usr/include/c++/5/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5/bits/deque.tcc" - textual header "/usr/include/c++/5/bits/enable_special_members.h" - textual header "/usr/include/c++/5/bits/exception_defines.h" - textual header "/usr/include/c++/5/bits/exception_ptr.h" - textual header "/usr/include/c++/5/bits/forward_list.h" - textual header "/usr/include/c++/5/bits/forward_list.tcc" - textual header "/usr/include/c++/5/bits/fstream.tcc" - textual header "/usr/include/c++/5/bits/functexcept.h" - textual header "/usr/include/c++/5/bits/functional_hash.h" - textual header "/usr/include/c++/5/bits/gslice.h" - textual header "/usr/include/c++/5/bits/gslice_array.h" - textual header "/usr/include/c++/5/bits/hash_bytes.h" - textual header "/usr/include/c++/5/bits/hashtable.h" - textual header "/usr/include/c++/5/bits/hashtable_policy.h" - textual header "/usr/include/c++/5/bits/indirect_array.h" - textual header "/usr/include/c++/5/bits/ios_base.h" - textual header "/usr/include/c++/5/bits/istream.tcc" - textual header "/usr/include/c++/5/bits/list.tcc" - textual header "/usr/include/c++/5/bits/locale_classes.h" - textual header "/usr/include/c++/5/bits/locale_classes.tcc" - textual header "/usr/include/c++/5/bits/locale_conv.h" - textual header "/usr/include/c++/5/bits/locale_facets.h" - textual header "/usr/include/c++/5/bits/locale_facets.tcc" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5/bits/localefwd.h" - textual header "/usr/include/c++/5/bits/mask_array.h" - textual header "/usr/include/c++/5/bits/memoryfwd.h" - textual header "/usr/include/c++/5/bits/move.h" - textual header "/usr/include/c++/5/bits/nested_exception.h" - textual header "/usr/include/c++/5/bits/ostream.tcc" - textual header "/usr/include/c++/5/bits/ostream_insert.h" - textual header "/usr/include/c++/5/bits/parse_numbers.h" - textual header "/usr/include/c++/5/bits/postypes.h" - textual header "/usr/include/c++/5/bits/predefined_ops.h" - textual header "/usr/include/c++/5/bits/ptr_traits.h" - textual header "/usr/include/c++/5/bits/quoted_string.h" - textual header "/usr/include/c++/5/bits/random.h" - textual header "/usr/include/c++/5/bits/random.tcc" - textual header "/usr/include/c++/5/bits/range_access.h" - textual header "/usr/include/c++/5/bits/regex.h" - textual header "/usr/include/c++/5/bits/regex.tcc" - textual header "/usr/include/c++/5/bits/regex_automaton.h" - textual header "/usr/include/c++/5/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5/bits/regex_compiler.h" - textual header "/usr/include/c++/5/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5/bits/regex_constants.h" - textual header "/usr/include/c++/5/bits/regex_error.h" - textual header "/usr/include/c++/5/bits/regex_executor.h" - textual header "/usr/include/c++/5/bits/regex_executor.tcc" - textual header "/usr/include/c++/5/bits/regex_scanner.h" - textual header "/usr/include/c++/5/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5/bits/shared_ptr.h" - textual header "/usr/include/c++/5/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5/bits/slice_array.h" - textual header "/usr/include/c++/5/bits/sstream.tcc" - textual header "/usr/include/c++/5/bits/stl_algo.h" - textual header "/usr/include/c++/5/bits/stl_algobase.h" - textual header "/usr/include/c++/5/bits/stl_bvector.h" - textual header "/usr/include/c++/5/bits/stl_construct.h" - textual header "/usr/include/c++/5/bits/stl_deque.h" - textual header "/usr/include/c++/5/bits/stl_function.h" - textual header "/usr/include/c++/5/bits/stl_heap.h" - textual header "/usr/include/c++/5/bits/stl_iterator.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5/bits/stl_list.h" - textual header "/usr/include/c++/5/bits/stl_map.h" - textual header "/usr/include/c++/5/bits/stl_multimap.h" - textual header "/usr/include/c++/5/bits/stl_multiset.h" - textual header "/usr/include/c++/5/bits/stl_numeric.h" - textual header "/usr/include/c++/5/bits/stl_pair.h" - textual header "/usr/include/c++/5/bits/stl_queue.h" - textual header "/usr/include/c++/5/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5/bits/stl_relops.h" - textual header "/usr/include/c++/5/bits/stl_set.h" - textual header "/usr/include/c++/5/bits/stl_stack.h" - textual header "/usr/include/c++/5/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5/bits/stl_tree.h" - textual header "/usr/include/c++/5/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5/bits/stl_vector.h" - textual header "/usr/include/c++/5/bits/stream_iterator.h" - textual header "/usr/include/c++/5/bits/streambuf.tcc" - textual header "/usr/include/c++/5/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5/bits/stringfwd.h" - textual header "/usr/include/c++/5/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5/bits/unique_ptr.h" - textual header "/usr/include/c++/5/bits/unordered_map.h" - textual header "/usr/include/c++/5/bits/unordered_set.h" - textual header "/usr/include/c++/5/bits/uses_allocator.h" - textual header "/usr/include/c++/5/bits/valarray_after.h" - textual header "/usr/include/c++/5/bits/valarray_array.h" - textual header "/usr/include/c++/5/bits/valarray_array.tcc" - textual header "/usr/include/c++/5/bits/valarray_before.h" - textual header "/usr/include/c++/5/bits/vector.tcc" - textual header "/usr/include/c++/5/bitset" - textual header "/usr/include/c++/5/cassert" - textual header "/usr/include/c++/5/ccomplex" - textual header "/usr/include/c++/5/cctype" - textual header "/usr/include/c++/5/cerrno" - textual header "/usr/include/c++/5/cfenv" - textual header "/usr/include/c++/5/cfloat" - textual header "/usr/include/c++/5/chrono" - textual header "/usr/include/c++/5/cinttypes" - textual header "/usr/include/c++/5/ciso646" - textual header "/usr/include/c++/5/climits" - textual header "/usr/include/c++/5/clocale" - textual header "/usr/include/c++/5/cmath" - textual header "/usr/include/c++/5/codecvt" - textual header "/usr/include/c++/5/complex" - textual header "/usr/include/c++/5/complex.h" - textual header "/usr/include/c++/5/condition_variable" - textual header "/usr/include/c++/5/csetjmp" - textual header "/usr/include/c++/5/csignal" - textual header "/usr/include/c++/5/cstdalign" - textual header "/usr/include/c++/5/cstdarg" - textual header "/usr/include/c++/5/cstdbool" - textual header "/usr/include/c++/5/cstddef" - textual header "/usr/include/c++/5/cstdint" - textual header "/usr/include/c++/5/cstdio" - textual header "/usr/include/c++/5/cstdlib" - textual header "/usr/include/c++/5/cstring" - textual header "/usr/include/c++/5/ctgmath" - textual header "/usr/include/c++/5/ctime" - textual header "/usr/include/c++/5/cwchar" - textual header "/usr/include/c++/5/cwctype" - textual header "/usr/include/c++/5/cxxabi.h" - textual header "/usr/include/c++/5/debug/array" - textual header "/usr/include/c++/5/debug/bitset" - textual header "/usr/include/c++/5/debug/debug.h" - textual header "/usr/include/c++/5/debug/deque" - textual header "/usr/include/c++/5/debug/formatter.h" - textual header "/usr/include/c++/5/debug/forward_list" - textual header "/usr/include/c++/5/debug/functions.h" - textual header "/usr/include/c++/5/debug/list" - textual header "/usr/include/c++/5/debug/macros.h" - textual header "/usr/include/c++/5/debug/map" - textual header "/usr/include/c++/5/debug/map.h" - textual header "/usr/include/c++/5/debug/multimap.h" - textual header "/usr/include/c++/5/debug/multiset.h" - textual header "/usr/include/c++/5/debug/safe_base.h" - textual header "/usr/include/c++/5/debug/safe_container.h" - textual header "/usr/include/c++/5/debug/safe_iterator.h" - textual header "/usr/include/c++/5/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5/debug/safe_sequence.h" - textual header "/usr/include/c++/5/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5/debug/set" - textual header "/usr/include/c++/5/debug/set.h" - textual header "/usr/include/c++/5/debug/string" - textual header "/usr/include/c++/5/debug/unordered_map" - textual header "/usr/include/c++/5/debug/unordered_set" - textual header "/usr/include/c++/5/debug/vector" - textual header "/usr/include/c++/5/decimal/decimal" - textual header "/usr/include/c++/5/decimal/decimal.h" - textual header "/usr/include/c++/5/deque" - textual header "/usr/include/c++/5/exception" - textual header "/usr/include/c++/5/experimental/algorithm" - textual header "/usr/include/c++/5/experimental/any" - textual header "/usr/include/c++/5/experimental/chrono" - textual header "/usr/include/c++/5/experimental/filesystem" - textual header "/usr/include/c++/5/experimental/fs_dir.h" - textual header "/usr/include/c++/5/experimental/fs_fwd.h" - textual header "/usr/include/c++/5/experimental/fs_ops.h" - textual header "/usr/include/c++/5/experimental/fs_path.h" - textual header "/usr/include/c++/5/experimental/functional" - textual header "/usr/include/c++/5/experimental/optional" - textual header "/usr/include/c++/5/experimental/ratio" - textual header "/usr/include/c++/5/experimental/string_view" - textual header "/usr/include/c++/5/experimental/string_view.tcc" - textual header "/usr/include/c++/5/experimental/system_error" - textual header "/usr/include/c++/5/experimental/tuple" - textual header "/usr/include/c++/5/experimental/type_traits" - textual header "/usr/include/c++/5/ext/algorithm" - textual header "/usr/include/c++/5/ext/aligned_buffer.h" - textual header "/usr/include/c++/5/ext/alloc_traits.h" - textual header "/usr/include/c++/5/ext/array_allocator.h" - textual header "/usr/include/c++/5/ext/atomicity.h" - textual header "/usr/include/c++/5/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5/ext/cast.h" - textual header "/usr/include/c++/5/ext/cmath" - textual header "/usr/include/c++/5/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5/ext/concurrence.h" - textual header "/usr/include/c++/5/ext/debug_allocator.h" - textual header "/usr/include/c++/5/ext/enc_filebuf.h" - textual header "/usr/include/c++/5/ext/extptr_allocator.h" - textual header "/usr/include/c++/5/ext/functional" - textual header "/usr/include/c++/5/ext/hash_map" - textual header "/usr/include/c++/5/ext/hash_set" - textual header "/usr/include/c++/5/ext/iterator" - textual header "/usr/include/c++/5/ext/malloc_allocator.h" - textual header "/usr/include/c++/5/ext/memory" - textual header "/usr/include/c++/5/ext/mt_allocator.h" - textual header "/usr/include/c++/5/ext/new_allocator.h" - textual header "/usr/include/c++/5/ext/numeric" - textual header "/usr/include/c++/5/ext/numeric_traits.h" - textual header "/usr/include/c++/5/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5/ext/pod_char_traits.h" - textual header "/usr/include/c++/5/ext/pointer.h" - textual header "/usr/include/c++/5/ext/pool_allocator.h" - textual header "/usr/include/c++/5/ext/random" - textual header "/usr/include/c++/5/ext/random.tcc" - textual header "/usr/include/c++/5/ext/rb_tree" - textual header "/usr/include/c++/5/ext/rc_string_base.h" - textual header "/usr/include/c++/5/ext/rope" - textual header "/usr/include/c++/5/ext/ropeimpl.h" - textual header "/usr/include/c++/5/ext/slist" - textual header "/usr/include/c++/5/ext/sso_string_base.h" - textual header "/usr/include/c++/5/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5/ext/string_conversions.h" - textual header "/usr/include/c++/5/ext/throw_allocator.h" - textual header "/usr/include/c++/5/ext/type_traits.h" - textual header "/usr/include/c++/5/ext/typelist.h" - textual header "/usr/include/c++/5/ext/vstring.h" - textual header "/usr/include/c++/5/ext/vstring.tcc" - textual header "/usr/include/c++/5/ext/vstring_fwd.h" - textual header "/usr/include/c++/5/ext/vstring_util.h" - textual header "/usr/include/c++/5/fenv.h" - textual header "/usr/include/c++/5/forward_list" - textual header "/usr/include/c++/5/fstream" - textual header "/usr/include/c++/5/functional" - textual header "/usr/include/c++/5/future" - textual header "/usr/include/c++/5/initializer_list" - textual header "/usr/include/c++/5/iomanip" - textual header "/usr/include/c++/5/ios" - textual header "/usr/include/c++/5/iosfwd" - textual header "/usr/include/c++/5/iostream" - textual header "/usr/include/c++/5/istream" - textual header "/usr/include/c++/5/iterator" - textual header "/usr/include/c++/5/limits" - textual header "/usr/include/c++/5/list" - textual header "/usr/include/c++/5/locale" - textual header "/usr/include/c++/5/map" - textual header "/usr/include/c++/5/memory" - textual header "/usr/include/c++/5/mutex" - textual header "/usr/include/c++/5/new" - textual header "/usr/include/c++/5/numeric" - textual header "/usr/include/c++/5/ostream" - textual header "/usr/include/c++/5/parallel/algo.h" - textual header "/usr/include/c++/5/parallel/algobase.h" - textual header "/usr/include/c++/5/parallel/algorithm" - textual header "/usr/include/c++/5/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5/parallel/base.h" - textual header "/usr/include/c++/5/parallel/basic_iterator.h" - textual header "/usr/include/c++/5/parallel/checkers.h" - textual header "/usr/include/c++/5/parallel/compatibility.h" - textual header "/usr/include/c++/5/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5/parallel/equally_split.h" - textual header "/usr/include/c++/5/parallel/features.h" - textual header "/usr/include/c++/5/parallel/find.h" - textual header "/usr/include/c++/5/parallel/find_selectors.h" - textual header "/usr/include/c++/5/parallel/for_each.h" - textual header "/usr/include/c++/5/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5/parallel/iterator.h" - textual header "/usr/include/c++/5/parallel/list_partition.h" - textual header "/usr/include/c++/5/parallel/losertree.h" - textual header "/usr/include/c++/5/parallel/merge.h" - textual header "/usr/include/c++/5/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5/parallel/multiway_merge.h" - textual header "/usr/include/c++/5/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5/parallel/numeric" - textual header "/usr/include/c++/5/parallel/numericfwd.h" - textual header "/usr/include/c++/5/parallel/omp_loop.h" - textual header "/usr/include/c++/5/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5/parallel/par_loop.h" - textual header "/usr/include/c++/5/parallel/parallel.h" - textual header "/usr/include/c++/5/parallel/partial_sum.h" - textual header "/usr/include/c++/5/parallel/partition.h" - textual header "/usr/include/c++/5/parallel/queue.h" - textual header "/usr/include/c++/5/parallel/quicksort.h" - textual header "/usr/include/c++/5/parallel/random_number.h" - textual header "/usr/include/c++/5/parallel/random_shuffle.h" - textual header "/usr/include/c++/5/parallel/search.h" - textual header "/usr/include/c++/5/parallel/set_operations.h" - textual header "/usr/include/c++/5/parallel/settings.h" - textual header "/usr/include/c++/5/parallel/sort.h" - textual header "/usr/include/c++/5/parallel/tags.h" - textual header "/usr/include/c++/5/parallel/types.h" - textual header "/usr/include/c++/5/parallel/unique_copy.h" - textual header "/usr/include/c++/5/parallel/workstealing.h" - textual header "/usr/include/c++/5/profile/array" - textual header "/usr/include/c++/5/profile/base.h" - textual header "/usr/include/c++/5/profile/bitset" - textual header "/usr/include/c++/5/profile/deque" - textual header "/usr/include/c++/5/profile/forward_list" - textual header "/usr/include/c++/5/profile/impl/profiler.h" - textual header "/usr/include/c++/5/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5/profile/iterator_tracker.h" - textual header "/usr/include/c++/5/profile/list" - textual header "/usr/include/c++/5/profile/map" - textual header "/usr/include/c++/5/profile/map.h" - textual header "/usr/include/c++/5/profile/multimap.h" - textual header "/usr/include/c++/5/profile/multiset.h" - textual header "/usr/include/c++/5/profile/ordered_base.h" - textual header "/usr/include/c++/5/profile/set" - textual header "/usr/include/c++/5/profile/set.h" - textual header "/usr/include/c++/5/profile/unordered_base.h" - textual header "/usr/include/c++/5/profile/unordered_map" - textual header "/usr/include/c++/5/profile/unordered_set" - textual header "/usr/include/c++/5/profile/vector" - textual header "/usr/include/c++/5/queue" - textual header "/usr/include/c++/5/random" - textual header "/usr/include/c++/5/ratio" - textual header "/usr/include/c++/5/regex" - textual header "/usr/include/c++/5/scoped_allocator" - textual header "/usr/include/c++/5/set" - textual header "/usr/include/c++/5/shared_mutex" - textual header "/usr/include/c++/5/sstream" - textual header "/usr/include/c++/5/stack" - textual header "/usr/include/c++/5/stdexcept" - textual header "/usr/include/c++/5/streambuf" - textual header "/usr/include/c++/5/string" - textual header "/usr/include/c++/5/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5/sun/misc/Service.h" - textual header "/usr/include/c++/5/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5/system_error" - textual header "/usr/include/c++/5/tgmath.h" - textual header "/usr/include/c++/5/thread" - textual header "/usr/include/c++/5/tr1/array" - textual header "/usr/include/c++/5/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5/tr1/beta_function.tcc" - textual header "/usr/include/c++/5/tr1/ccomplex" - textual header "/usr/include/c++/5/tr1/cctype" - textual header "/usr/include/c++/5/tr1/cfenv" - textual header "/usr/include/c++/5/tr1/cfloat" - textual header "/usr/include/c++/5/tr1/cinttypes" - textual header "/usr/include/c++/5/tr1/climits" - textual header "/usr/include/c++/5/tr1/cmath" - textual header "/usr/include/c++/5/tr1/complex" - textual header "/usr/include/c++/5/tr1/complex.h" - textual header "/usr/include/c++/5/tr1/cstdarg" - textual header "/usr/include/c++/5/tr1/cstdbool" - textual header "/usr/include/c++/5/tr1/cstdint" - textual header "/usr/include/c++/5/tr1/cstdio" - textual header "/usr/include/c++/5/tr1/cstdlib" - textual header "/usr/include/c++/5/tr1/ctgmath" - textual header "/usr/include/c++/5/tr1/ctime" - textual header "/usr/include/c++/5/tr1/ctype.h" - textual header "/usr/include/c++/5/tr1/cwchar" - textual header "/usr/include/c++/5/tr1/cwctype" - textual header "/usr/include/c++/5/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5/tr1/fenv.h" - textual header "/usr/include/c++/5/tr1/float.h" - textual header "/usr/include/c++/5/tr1/functional" - textual header "/usr/include/c++/5/tr1/functional_hash.h" - textual header "/usr/include/c++/5/tr1/gamma.tcc" - textual header "/usr/include/c++/5/tr1/hashtable.h" - textual header "/usr/include/c++/5/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5/tr1/inttypes.h" - textual header "/usr/include/c++/5/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5/tr1/limits.h" - textual header "/usr/include/c++/5/tr1/math.h" - textual header "/usr/include/c++/5/tr1/memory" - textual header "/usr/include/c++/5/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5/tr1/random" - textual header "/usr/include/c++/5/tr1/random.h" - textual header "/usr/include/c++/5/tr1/random.tcc" - textual header "/usr/include/c++/5/tr1/regex" - textual header "/usr/include/c++/5/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5/tr1/shared_ptr.h" - textual header "/usr/include/c++/5/tr1/special_function_util.h" - textual header "/usr/include/c++/5/tr1/stdarg.h" - textual header "/usr/include/c++/5/tr1/stdbool.h" - textual header "/usr/include/c++/5/tr1/stdint.h" - textual header "/usr/include/c++/5/tr1/stdio.h" - textual header "/usr/include/c++/5/tr1/stdlib.h" - textual header "/usr/include/c++/5/tr1/tgmath.h" - textual header "/usr/include/c++/5/tr1/tuple" - textual header "/usr/include/c++/5/tr1/type_traits" - textual header "/usr/include/c++/5/tr1/unordered_map" - textual header "/usr/include/c++/5/tr1/unordered_map.h" - textual header "/usr/include/c++/5/tr1/unordered_set" - textual header "/usr/include/c++/5/tr1/unordered_set.h" - textual header "/usr/include/c++/5/tr1/utility" - textual header "/usr/include/c++/5/tr1/wchar.h" - textual header "/usr/include/c++/5/tr1/wctype.h" - textual header "/usr/include/c++/5/tr2/bool_set" - textual header "/usr/include/c++/5/tr2/bool_set.tcc" - textual header "/usr/include/c++/5/tr2/dynamic_bitset" - textual header "/usr/include/c++/5/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5/tr2/ratio" - textual header "/usr/include/c++/5/tr2/type_traits" - textual header "/usr/include/c++/5/tuple" - textual header "/usr/include/c++/5/type_traits" - textual header "/usr/include/c++/5/typeindex" - textual header "/usr/include/c++/5/typeinfo" - textual header "/usr/include/c++/5/unordered_map" - textual header "/usr/include/c++/5/unordered_set" - textual header "/usr/include/c++/5/utility" - textual header "/usr/include/c++/5/valarray" - textual header "/usr/include/c++/5/vector" - textual header "/usr/include/complex.h" - textual header "/usr/include/cpio.h" - textual header "/usr/include/crypt.h" - textual header "/usr/include/ctype.h" - textual header "/usr/include/dirent.h" - textual header "/usr/include/dlfcn.h" - textual header "/usr/include/drm/drm.h" - textual header "/usr/include/drm/drm_fourcc.h" - textual header "/usr/include/drm/drm_mode.h" - textual header "/usr/include/drm/drm_sarea.h" - textual header "/usr/include/drm/exynos_drm.h" - textual header "/usr/include/drm/i810_drm.h" - textual header "/usr/include/drm/i915_drm.h" - textual header "/usr/include/drm/mga_drm.h" - textual header "/usr/include/drm/msm_drm.h" - textual header "/usr/include/drm/nouveau_drm.h" - textual header "/usr/include/drm/qxl_drm.h" - textual header "/usr/include/drm/r128_drm.h" - textual header "/usr/include/drm/radeon_drm.h" - textual header "/usr/include/drm/savage_drm.h" - textual header "/usr/include/drm/sis_drm.h" - textual header "/usr/include/drm/tegra_drm.h" - textual header "/usr/include/drm/via_drm.h" - textual header "/usr/include/drm/virtgpu_drm.h" - textual header "/usr/include/drm/vmwgfx_drm.h" - textual header "/usr/include/elf.h" - textual header "/usr/include/endian.h" - textual header "/usr/include/envz.h" - textual header "/usr/include/err.h" - textual header "/usr/include/errno.h" - textual header "/usr/include/error.h" - textual header "/usr/include/execinfo.h" - textual header "/usr/include/expat.h" - textual header "/usr/include/expat_external.h" - textual header "/usr/include/fcntl.h" - textual header "/usr/include/features.h" - textual header "/usr/include/fenv.h" - textual header "/usr/include/fmtmsg.h" - textual header "/usr/include/fnmatch.h" - textual header "/usr/include/fstab.h" - textual header "/usr/include/fts.h" - textual header "/usr/include/ftw.h" - textual header "/usr/include/gconv.h" - textual header "/usr/include/getopt.h" - textual header "/usr/include/glob.h" - textual header "/usr/include/gnu-versions.h" - textual header "/usr/include/grp.h" - textual header "/usr/include/gshadow.h" - textual header "/usr/include/iconv.h" - textual header "/usr/include/ifaddrs.h" - textual header "/usr/include/inttypes.h" - textual header "/usr/include/langinfo.h" - textual header "/usr/include/lastlog.h" - textual header "/usr/include/libgen.h" - textual header "/usr/include/libintl.h" - textual header "/usr/include/libio.h" - textual header "/usr/include/limits.h" - textual header "/usr/include/link.h" - textual header "/usr/include/linux/a.out.h" - textual header "/usr/include/linux/acct.h" - textual header "/usr/include/linux/adb.h" - textual header "/usr/include/linux/adfs_fs.h" - textual header "/usr/include/linux/affs_hardblocks.h" - textual header "/usr/include/linux/agpgart.h" - textual header "/usr/include/linux/aio_abi.h" - textual header "/usr/include/linux/am437x-vpfe.h" - textual header "/usr/include/linux/android/binder.h" - textual header "/usr/include/linux/apm_bios.h" - textual header "/usr/include/linux/arcfb.h" - textual header "/usr/include/linux/atalk.h" - textual header "/usr/include/linux/atm.h" - textual header "/usr/include/linux/atm_eni.h" - textual header "/usr/include/linux/atm_he.h" - textual header "/usr/include/linux/atm_idt77105.h" - textual header "/usr/include/linux/atm_nicstar.h" - textual header "/usr/include/linux/atm_tcp.h" - textual header "/usr/include/linux/atm_zatm.h" - textual header "/usr/include/linux/atmapi.h" - textual header "/usr/include/linux/atmarp.h" - textual header "/usr/include/linux/atmbr2684.h" - textual header "/usr/include/linux/atmclip.h" - textual header "/usr/include/linux/atmdev.h" - textual header "/usr/include/linux/atmioc.h" - textual header "/usr/include/linux/atmlec.h" - textual header "/usr/include/linux/atmmpc.h" - textual header "/usr/include/linux/atmppp.h" - textual header "/usr/include/linux/atmsap.h" - textual header "/usr/include/linux/atmsvc.h" - textual header "/usr/include/linux/audit.h" - textual header "/usr/include/linux/aufs_type.h" - textual header "/usr/include/linux/auto_fs.h" - textual header "/usr/include/linux/auto_fs4.h" - textual header "/usr/include/linux/auxvec.h" - textual header "/usr/include/linux/ax25.h" - textual header "/usr/include/linux/b1lli.h" - textual header "/usr/include/linux/baycom.h" - textual header "/usr/include/linux/bcm933xx_hcs.h" - textual header "/usr/include/linux/bfs_fs.h" - textual header "/usr/include/linux/binfmts.h" - textual header "/usr/include/linux/blkpg.h" - textual header "/usr/include/linux/blktrace_api.h" - textual header "/usr/include/linux/bpf.h" - textual header "/usr/include/linux/bpf_common.h" - textual header "/usr/include/linux/bpqether.h" - textual header "/usr/include/linux/bsg.h" - textual header "/usr/include/linux/btrfs.h" - textual header "/usr/include/linux/byteorder/big_endian.h" - textual header "/usr/include/linux/byteorder/little_endian.h" - textual header "/usr/include/linux/caif/caif_socket.h" - textual header "/usr/include/linux/caif/if_caif.h" - textual header "/usr/include/linux/can.h" - textual header "/usr/include/linux/can/bcm.h" - textual header "/usr/include/linux/can/error.h" - textual header "/usr/include/linux/can/gw.h" - textual header "/usr/include/linux/can/netlink.h" - textual header "/usr/include/linux/can/raw.h" - textual header "/usr/include/linux/capability.h" - textual header "/usr/include/linux/capi.h" - textual header "/usr/include/linux/cciss_defs.h" - textual header "/usr/include/linux/cciss_ioctl.h" - textual header "/usr/include/linux/cdrom.h" - textual header "/usr/include/linux/cgroupstats.h" - textual header "/usr/include/linux/chio.h" - textual header "/usr/include/linux/cm4000_cs.h" - textual header "/usr/include/linux/cn_proc.h" - textual header "/usr/include/linux/coda.h" - textual header "/usr/include/linux/coda_psdev.h" - textual header "/usr/include/linux/coff.h" - textual header "/usr/include/linux/connector.h" - textual header "/usr/include/linux/const.h" - textual header "/usr/include/linux/cramfs_fs.h" - textual header "/usr/include/linux/cuda.h" - textual header "/usr/include/linux/cyclades.h" - textual header "/usr/include/linux/cycx_cfm.h" - textual header "/usr/include/linux/dcbnl.h" - textual header "/usr/include/linux/dccp.h" - textual header "/usr/include/linux/dlm.h" - textual header "/usr/include/linux/dlm_device.h" - textual header "/usr/include/linux/dlm_netlink.h" - textual header "/usr/include/linux/dlm_plock.h" - textual header "/usr/include/linux/dlmconstants.h" - textual header "/usr/include/linux/dm-ioctl.h" - textual header "/usr/include/linux/dm-log-userspace.h" - textual header "/usr/include/linux/dn.h" - textual header "/usr/include/linux/dqblk_xfs.h" - textual header "/usr/include/linux/dvb/audio.h" - textual header "/usr/include/linux/dvb/ca.h" - textual header "/usr/include/linux/dvb/dmx.h" - textual header "/usr/include/linux/dvb/frontend.h" - textual header "/usr/include/linux/dvb/net.h" - textual header "/usr/include/linux/dvb/osd.h" - textual header "/usr/include/linux/dvb/version.h" - textual header "/usr/include/linux/dvb/video.h" - textual header "/usr/include/linux/edd.h" - textual header "/usr/include/linux/efs_fs_sb.h" - textual header "/usr/include/linux/elf-em.h" - textual header "/usr/include/linux/elf-fdpic.h" - textual header "/usr/include/linux/elf.h" - textual header "/usr/include/linux/elfcore.h" - textual header "/usr/include/linux/errno.h" - textual header "/usr/include/linux/errqueue.h" - textual header "/usr/include/linux/ethtool.h" - textual header "/usr/include/linux/eventpoll.h" - textual header "/usr/include/linux/fadvise.h" - textual header "/usr/include/linux/falloc.h" - textual header "/usr/include/linux/fanotify.h" - textual header "/usr/include/linux/fb.h" - textual header "/usr/include/linux/fcntl.h" - textual header "/usr/include/linux/fd.h" - textual header "/usr/include/linux/fdreg.h" - textual header "/usr/include/linux/fib_rules.h" - textual header "/usr/include/linux/fiemap.h" - textual header "/usr/include/linux/filter.h" - textual header "/usr/include/linux/firewire-cdev.h" - textual header "/usr/include/linux/firewire-constants.h" - textual header "/usr/include/linux/flat.h" - textual header "/usr/include/linux/fou.h" - textual header "/usr/include/linux/fs.h" - textual header "/usr/include/linux/fsl_hypervisor.h" - textual header "/usr/include/linux/fuse.h" - textual header "/usr/include/linux/futex.h" - textual header "/usr/include/linux/gameport.h" - textual header "/usr/include/linux/gen_stats.h" - textual header "/usr/include/linux/genetlink.h" - textual header "/usr/include/linux/gfs2_ondisk.h" - textual header "/usr/include/linux/gigaset_dev.h" - textual header "/usr/include/linux/gsmmux.h" - textual header "/usr/include/linux/hdlc.h" - textual header "/usr/include/linux/hdlc/ioctl.h" - textual header "/usr/include/linux/hdlcdrv.h" - textual header "/usr/include/linux/hdreg.h" - textual header "/usr/include/linux/hid.h" - textual header "/usr/include/linux/hiddev.h" - textual header "/usr/include/linux/hidraw.h" - textual header "/usr/include/linux/hpet.h" - textual header "/usr/include/linux/hsi/cs-protocol.h" - textual header "/usr/include/linux/hsi/hsi_char.h" - textual header "/usr/include/linux/hsr_netlink.h" - textual header "/usr/include/linux/hw_breakpoint.h" - textual header "/usr/include/linux/hyperv.h" - textual header "/usr/include/linux/hysdn_if.h" - textual header "/usr/include/linux/i2c-dev.h" - textual header "/usr/include/linux/i2c.h" - textual header "/usr/include/linux/i2o-dev.h" - textual header "/usr/include/linux/i8k.h" - textual header "/usr/include/linux/icmp.h" - textual header "/usr/include/linux/icmpv6.h" - textual header "/usr/include/linux/if.h" - textual header "/usr/include/linux/if_addr.h" - textual header "/usr/include/linux/if_addrlabel.h" - textual header "/usr/include/linux/if_alg.h" - textual header "/usr/include/linux/if_arcnet.h" - textual header "/usr/include/linux/if_arp.h" - textual header "/usr/include/linux/if_bonding.h" - textual header "/usr/include/linux/if_bridge.h" - textual header "/usr/include/linux/if_cablemodem.h" - textual header "/usr/include/linux/if_eql.h" - textual header "/usr/include/linux/if_ether.h" - textual header "/usr/include/linux/if_fc.h" - textual header "/usr/include/linux/if_fddi.h" - textual header "/usr/include/linux/if_frad.h" - textual header "/usr/include/linux/if_hippi.h" - textual header "/usr/include/linux/if_infiniband.h" - textual header "/usr/include/linux/if_link.h" - textual header "/usr/include/linux/if_ltalk.h" - textual header "/usr/include/linux/if_packet.h" - textual header "/usr/include/linux/if_phonet.h" - textual header "/usr/include/linux/if_plip.h" - textual header "/usr/include/linux/if_ppp.h" - textual header "/usr/include/linux/if_pppol2tp.h" - textual header "/usr/include/linux/if_pppox.h" - textual header "/usr/include/linux/if_slip.h" - textual header "/usr/include/linux/if_team.h" - textual header "/usr/include/linux/if_tun.h" - textual header "/usr/include/linux/if_tunnel.h" - textual header "/usr/include/linux/if_vlan.h" - textual header "/usr/include/linux/if_x25.h" - textual header "/usr/include/linux/igmp.h" - textual header "/usr/include/linux/iio/events.h" - textual header "/usr/include/linux/iio/types.h" - textual header "/usr/include/linux/ila.h" - textual header "/usr/include/linux/in.h" - textual header "/usr/include/linux/in6.h" - textual header "/usr/include/linux/in_route.h" - textual header "/usr/include/linux/inet_diag.h" - textual header "/usr/include/linux/inotify.h" - textual header "/usr/include/linux/input-event-codes.h" - textual header "/usr/include/linux/input.h" - textual header "/usr/include/linux/ioctl.h" - textual header "/usr/include/linux/ip.h" - textual header "/usr/include/linux/ip6_tunnel.h" - textual header "/usr/include/linux/ip_vs.h" - textual header "/usr/include/linux/ipc.h" - textual header "/usr/include/linux/ipmi.h" - textual header "/usr/include/linux/ipmi_msgdefs.h" - textual header "/usr/include/linux/ipsec.h" - textual header "/usr/include/linux/ipv6.h" - textual header "/usr/include/linux/ipv6_route.h" - textual header "/usr/include/linux/ipx.h" - textual header "/usr/include/linux/irda.h" - textual header "/usr/include/linux/irqnr.h" - textual header "/usr/include/linux/isdn.h" - textual header "/usr/include/linux/isdn/capicmd.h" - textual header "/usr/include/linux/isdn_divertif.h" - textual header "/usr/include/linux/isdn_ppp.h" - textual header "/usr/include/linux/isdnif.h" - textual header "/usr/include/linux/iso_fs.h" - textual header "/usr/include/linux/ivtv.h" - textual header "/usr/include/linux/ivtvfb.h" - textual header "/usr/include/linux/ixjuser.h" - textual header "/usr/include/linux/jffs2.h" - textual header "/usr/include/linux/joystick.h" - textual header "/usr/include/linux/kcmp.h" - textual header "/usr/include/linux/kd.h" - textual header "/usr/include/linux/kdev_t.h" - textual header "/usr/include/linux/kernel-page-flags.h" - textual header "/usr/include/linux/kernel.h" - textual header "/usr/include/linux/kernelcapi.h" - textual header "/usr/include/linux/kexec.h" - textual header "/usr/include/linux/keyboard.h" - textual header "/usr/include/linux/keyctl.h" - textual header "/usr/include/linux/kvm.h" - textual header "/usr/include/linux/kvm_para.h" - textual header "/usr/include/linux/l2tp.h" - textual header "/usr/include/linux/libc-compat.h" - textual header "/usr/include/linux/limits.h" - textual header "/usr/include/linux/llc.h" - textual header "/usr/include/linux/loop.h" - textual header "/usr/include/linux/lp.h" - textual header "/usr/include/linux/lwtunnel.h" - textual header "/usr/include/linux/magic.h" - textual header "/usr/include/linux/major.h" - textual header "/usr/include/linux/map_to_7segment.h" - textual header "/usr/include/linux/matroxfb.h" - textual header "/usr/include/linux/mdio.h" - textual header "/usr/include/linux/media-bus-format.h" - textual header "/usr/include/linux/media.h" - textual header "/usr/include/linux/mei.h" - textual header "/usr/include/linux/membarrier.h" - textual header "/usr/include/linux/memfd.h" - textual header "/usr/include/linux/mempolicy.h" - textual header "/usr/include/linux/meye.h" - textual header "/usr/include/linux/mic_common.h" - textual header "/usr/include/linux/mic_ioctl.h" - textual header "/usr/include/linux/mii.h" - textual header "/usr/include/linux/minix_fs.h" - textual header "/usr/include/linux/mman.h" - textual header "/usr/include/linux/mmc/ioctl.h" - textual header "/usr/include/linux/mmtimer.h" - textual header "/usr/include/linux/mpls.h" - textual header "/usr/include/linux/mpls_iptunnel.h" - textual header "/usr/include/linux/mqueue.h" - textual header "/usr/include/linux/mroute.h" - textual header "/usr/include/linux/mroute6.h" - textual header "/usr/include/linux/msdos_fs.h" - textual header "/usr/include/linux/msg.h" - textual header "/usr/include/linux/mtio.h" - textual header "/usr/include/linux/n_r3964.h" - textual header "/usr/include/linux/nbd.h" - textual header "/usr/include/linux/ncp.h" - textual header "/usr/include/linux/ncp_fs.h" - textual header "/usr/include/linux/ncp_mount.h" - textual header "/usr/include/linux/ncp_no.h" - textual header "/usr/include/linux/ndctl.h" - textual header "/usr/include/linux/neighbour.h" - textual header "/usr/include/linux/net.h" - textual header "/usr/include/linux/net_dropmon.h" - textual header "/usr/include/linux/net_namespace.h" - textual header "/usr/include/linux/net_tstamp.h" - textual header "/usr/include/linux/netconf.h" - textual header "/usr/include/linux/netdevice.h" - textual header "/usr/include/linux/netfilter.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_bitmap.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_hash.h" - textual header "/usr/include/linux/netfilter/ipset/ip_set_list.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_common.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_ftp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_sctp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tcp.h" - textual header "/usr/include/linux/netfilter/nf_conntrack_tuple_common.h" - textual header "/usr/include/linux/netfilter/nf_nat.h" - textual header "/usr/include/linux/netfilter/nf_tables.h" - textual header "/usr/include/linux/netfilter/nf_tables_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink.h" - textual header "/usr/include/linux/netfilter/nfnetlink_acct.h" - textual header "/usr/include/linux/netfilter/nfnetlink_compat.h" - textual header "/usr/include/linux/netfilter/nfnetlink_conntrack.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cthelper.h" - textual header "/usr/include/linux/netfilter/nfnetlink_cttimeout.h" - textual header "/usr/include/linux/netfilter/nfnetlink_log.h" - textual header "/usr/include/linux/netfilter/nfnetlink_queue.h" - textual header "/usr/include/linux/netfilter/x_tables.h" - textual header "/usr/include/linux/netfilter/xt_AUDIT.h" - textual header "/usr/include/linux/netfilter/xt_CHECKSUM.h" - textual header "/usr/include/linux/netfilter/xt_CLASSIFY.h" - textual header "/usr/include/linux/netfilter/xt_CONNMARK.h" - textual header "/usr/include/linux/netfilter/xt_CONNSECMARK.h" - textual header "/usr/include/linux/netfilter/xt_CT.h" - textual header "/usr/include/linux/netfilter/xt_DSCP.h" - textual header "/usr/include/linux/netfilter/xt_HMARK.h" - textual header "/usr/include/linux/netfilter/xt_IDLETIMER.h" - textual header "/usr/include/linux/netfilter/xt_LED.h" - textual header "/usr/include/linux/netfilter/xt_LOG.h" - textual header "/usr/include/linux/netfilter/xt_MARK.h" - textual header "/usr/include/linux/netfilter/xt_NFLOG.h" - textual header "/usr/include/linux/netfilter/xt_NFQUEUE.h" - textual header "/usr/include/linux/netfilter/xt_RATEEST.h" - textual header "/usr/include/linux/netfilter/xt_SECMARK.h" - textual header "/usr/include/linux/netfilter/xt_TCPMSS.h" - textual header "/usr/include/linux/netfilter/xt_TCPOPTSTRIP.h" - textual header "/usr/include/linux/netfilter/xt_TEE.h" - textual header "/usr/include/linux/netfilter/xt_TPROXY.h" - textual header "/usr/include/linux/netfilter/xt_addrtype.h" - textual header "/usr/include/linux/netfilter/xt_bpf.h" - textual header "/usr/include/linux/netfilter/xt_cgroup.h" - textual header "/usr/include/linux/netfilter/xt_cluster.h" - textual header "/usr/include/linux/netfilter/xt_comment.h" - textual header "/usr/include/linux/netfilter/xt_connbytes.h" - textual header "/usr/include/linux/netfilter/xt_connlabel.h" - textual header "/usr/include/linux/netfilter/xt_connlimit.h" - textual header "/usr/include/linux/netfilter/xt_connmark.h" - textual header "/usr/include/linux/netfilter/xt_conntrack.h" - textual header "/usr/include/linux/netfilter/xt_cpu.h" - textual header "/usr/include/linux/netfilter/xt_dccp.h" - textual header "/usr/include/linux/netfilter/xt_devgroup.h" - textual header "/usr/include/linux/netfilter/xt_dscp.h" - textual header "/usr/include/linux/netfilter/xt_ecn.h" - textual header "/usr/include/linux/netfilter/xt_esp.h" - textual header "/usr/include/linux/netfilter/xt_hashlimit.h" - textual header "/usr/include/linux/netfilter/xt_helper.h" - textual header "/usr/include/linux/netfilter/xt_ipcomp.h" - textual header "/usr/include/linux/netfilter/xt_iprange.h" - textual header "/usr/include/linux/netfilter/xt_ipvs.h" - textual header "/usr/include/linux/netfilter/xt_l2tp.h" - textual header "/usr/include/linux/netfilter/xt_length.h" - textual header "/usr/include/linux/netfilter/xt_limit.h" - textual header "/usr/include/linux/netfilter/xt_mac.h" - textual header "/usr/include/linux/netfilter/xt_mark.h" - textual header "/usr/include/linux/netfilter/xt_multiport.h" - textual header "/usr/include/linux/netfilter/xt_nfacct.h" - textual header "/usr/include/linux/netfilter/xt_osf.h" - textual header "/usr/include/linux/netfilter/xt_owner.h" - textual header "/usr/include/linux/netfilter/xt_physdev.h" - textual header "/usr/include/linux/netfilter/xt_pkttype.h" - textual header "/usr/include/linux/netfilter/xt_policy.h" - textual header "/usr/include/linux/netfilter/xt_quota.h" - textual header "/usr/include/linux/netfilter/xt_rateest.h" - textual header "/usr/include/linux/netfilter/xt_realm.h" - textual header "/usr/include/linux/netfilter/xt_recent.h" - textual header "/usr/include/linux/netfilter/xt_rpfilter.h" - textual header "/usr/include/linux/netfilter/xt_sctp.h" - textual header "/usr/include/linux/netfilter/xt_set.h" - textual header "/usr/include/linux/netfilter/xt_socket.h" - textual header "/usr/include/linux/netfilter/xt_state.h" - textual header "/usr/include/linux/netfilter/xt_statistic.h" - textual header "/usr/include/linux/netfilter/xt_string.h" - textual header "/usr/include/linux/netfilter/xt_tcpmss.h" - textual header "/usr/include/linux/netfilter/xt_tcpudp.h" - textual header "/usr/include/linux/netfilter/xt_time.h" - textual header "/usr/include/linux/netfilter/xt_u32.h" - textual header "/usr/include/linux/netfilter_arp.h" - textual header "/usr/include/linux/netfilter_arp/arp_tables.h" - textual header "/usr/include/linux/netfilter_arp/arpt_mangle.h" - textual header "/usr/include/linux/netfilter_bridge.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_802_3.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_among.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_arpreply.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_ip6.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_limit.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_log.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_m.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_mark_t.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nat.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_nflog.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_pkttype.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_redirect.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_stp.h" - textual header "/usr/include/linux/netfilter_bridge/ebt_vlan.h" - textual header "/usr/include/linux/netfilter_bridge/ebtables.h" - textual header "/usr/include/linux/netfilter_decnet.h" - textual header "/usr/include/linux/netfilter_ipv4.h" - textual header "/usr/include/linux/netfilter_ipv4/ip_tables.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ECN.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_LOG.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_TTL.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ah.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ecn.h" - textual header "/usr/include/linux/netfilter_ipv4/ipt_ttl.h" - textual header "/usr/include/linux/netfilter_ipv6.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6_tables.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_HL.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_LOG.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_NPT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_REJECT.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ah.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_frag.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_hl.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_mh.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_opts.h" - textual header "/usr/include/linux/netfilter_ipv6/ip6t_rt.h" - textual header "/usr/include/linux/netlink.h" - textual header "/usr/include/linux/netlink_diag.h" - textual header "/usr/include/linux/netrom.h" - textual header "/usr/include/linux/nfc.h" - textual header "/usr/include/linux/nfs.h" - textual header "/usr/include/linux/nfs2.h" - textual header "/usr/include/linux/nfs3.h" - textual header "/usr/include/linux/nfs4.h" - textual header "/usr/include/linux/nfs4_mount.h" - textual header "/usr/include/linux/nfs_fs.h" - textual header "/usr/include/linux/nfs_idmap.h" - textual header "/usr/include/linux/nfs_mount.h" - textual header "/usr/include/linux/nfsacl.h" - textual header "/usr/include/linux/nfsd/cld.h" - textual header "/usr/include/linux/nfsd/debug.h" - textual header "/usr/include/linux/nfsd/export.h" - textual header "/usr/include/linux/nfsd/nfsfh.h" - textual header "/usr/include/linux/nfsd/stats.h" - textual header "/usr/include/linux/nl80211.h" - textual header "/usr/include/linux/nubus.h" - textual header "/usr/include/linux/nvme_ioctl.h" - textual header "/usr/include/linux/nvram.h" - textual header "/usr/include/linux/omap3isp.h" - textual header "/usr/include/linux/omapfb.h" - textual header "/usr/include/linux/oom.h" - textual header "/usr/include/linux/openvswitch.h" - textual header "/usr/include/linux/packet_diag.h" - textual header "/usr/include/linux/param.h" - textual header "/usr/include/linux/parport.h" - textual header "/usr/include/linux/patchkey.h" - textual header "/usr/include/linux/pci.h" - textual header "/usr/include/linux/pci_regs.h" - textual header "/usr/include/linux/perf_event.h" - textual header "/usr/include/linux/personality.h" - textual header "/usr/include/linux/pfkeyv2.h" - textual header "/usr/include/linux/pg.h" - textual header "/usr/include/linux/phantom.h" - textual header "/usr/include/linux/phonet.h" - textual header "/usr/include/linux/pkt_cls.h" - textual header "/usr/include/linux/pkt_sched.h" - textual header "/usr/include/linux/pktcdvd.h" - textual header "/usr/include/linux/pmu.h" - textual header "/usr/include/linux/poll.h" - textual header "/usr/include/linux/posix_types.h" - textual header "/usr/include/linux/ppdev.h" - textual header "/usr/include/linux/ppp-comp.h" - textual header "/usr/include/linux/ppp-ioctl.h" - textual header "/usr/include/linux/ppp_defs.h" - textual header "/usr/include/linux/pps.h" - textual header "/usr/include/linux/prctl.h" - textual header "/usr/include/linux/psci.h" - textual header "/usr/include/linux/ptp_clock.h" - textual header "/usr/include/linux/ptrace.h" - textual header "/usr/include/linux/qnx4_fs.h" - textual header "/usr/include/linux/qnxtypes.h" - textual header "/usr/include/linux/quota.h" - textual header "/usr/include/linux/radeonfb.h" - textual header "/usr/include/linux/raid/md_p.h" - textual header "/usr/include/linux/raid/md_u.h" - textual header "/usr/include/linux/random.h" - textual header "/usr/include/linux/raw.h" - textual header "/usr/include/linux/rds.h" - textual header "/usr/include/linux/reboot.h" - textual header "/usr/include/linux/reiserfs_fs.h" - textual header "/usr/include/linux/reiserfs_xattr.h" - textual header "/usr/include/linux/resource.h" - textual header "/usr/include/linux/rfkill.h" - textual header "/usr/include/linux/romfs_fs.h" - textual header "/usr/include/linux/rose.h" - textual header "/usr/include/linux/route.h" - textual header "/usr/include/linux/rtc.h" - textual header "/usr/include/linux/rtnetlink.h" - textual header "/usr/include/linux/scc.h" - textual header "/usr/include/linux/sched.h" - textual header "/usr/include/linux/scif_ioctl.h" - textual header "/usr/include/linux/screen_info.h" - textual header "/usr/include/linux/sctp.h" - textual header "/usr/include/linux/sdla.h" - textual header "/usr/include/linux/seccomp.h" - textual header "/usr/include/linux/securebits.h" - textual header "/usr/include/linux/selinux_netlink.h" - textual header "/usr/include/linux/sem.h" - textual header "/usr/include/linux/serial.h" - textual header "/usr/include/linux/serial_core.h" - textual header "/usr/include/linux/serial_reg.h" - textual header "/usr/include/linux/serio.h" - textual header "/usr/include/linux/shm.h" - textual header "/usr/include/linux/signal.h" - textual header "/usr/include/linux/signalfd.h" - textual header "/usr/include/linux/smiapp.h" - textual header "/usr/include/linux/snmp.h" - textual header "/usr/include/linux/sock_diag.h" - textual header "/usr/include/linux/socket.h" - textual header "/usr/include/linux/sockios.h" - textual header "/usr/include/linux/sonet.h" - textual header "/usr/include/linux/sonypi.h" - textual header "/usr/include/linux/sound.h" - textual header "/usr/include/linux/soundcard.h" - textual header "/usr/include/linux/spi/spidev.h" - textual header "/usr/include/linux/stat.h" - textual header "/usr/include/linux/stddef.h" - textual header "/usr/include/linux/string.h" - textual header "/usr/include/linux/sunrpc/debug.h" - textual header "/usr/include/linux/suspend_ioctls.h" - textual header "/usr/include/linux/swab.h" - textual header "/usr/include/linux/synclink.h" - textual header "/usr/include/linux/sysctl.h" - textual header "/usr/include/linux/sysinfo.h" - textual header "/usr/include/linux/target_core_user.h" - textual header "/usr/include/linux/taskstats.h" - textual header "/usr/include/linux/tc_act/tc_bpf.h" - textual header "/usr/include/linux/tc_act/tc_connmark.h" - textual header "/usr/include/linux/tc_act/tc_csum.h" - textual header "/usr/include/linux/tc_act/tc_defact.h" - textual header "/usr/include/linux/tc_act/tc_gact.h" - textual header "/usr/include/linux/tc_act/tc_ipt.h" - textual header "/usr/include/linux/tc_act/tc_mirred.h" - textual header "/usr/include/linux/tc_act/tc_nat.h" - textual header "/usr/include/linux/tc_act/tc_pedit.h" - textual header "/usr/include/linux/tc_act/tc_skbedit.h" - textual header "/usr/include/linux/tc_act/tc_vlan.h" - textual header "/usr/include/linux/tc_ematch/tc_em_cmp.h" - textual header "/usr/include/linux/tc_ematch/tc_em_meta.h" - textual header "/usr/include/linux/tc_ematch/tc_em_nbyte.h" - textual header "/usr/include/linux/tc_ematch/tc_em_text.h" - textual header "/usr/include/linux/tcp.h" - textual header "/usr/include/linux/tcp_metrics.h" - textual header "/usr/include/linux/telephony.h" - textual header "/usr/include/linux/termios.h" - textual header "/usr/include/linux/thermal.h" - textual header "/usr/include/linux/time.h" - textual header "/usr/include/linux/times.h" - textual header "/usr/include/linux/timex.h" - textual header "/usr/include/linux/tiocl.h" - textual header "/usr/include/linux/tipc.h" - textual header "/usr/include/linux/tipc_config.h" - textual header "/usr/include/linux/tipc_netlink.h" - textual header "/usr/include/linux/toshiba.h" - textual header "/usr/include/linux/tty.h" - textual header "/usr/include/linux/tty_flags.h" - textual header "/usr/include/linux/types.h" - textual header "/usr/include/linux/udf_fs_i.h" - textual header "/usr/include/linux/udp.h" - textual header "/usr/include/linux/uhid.h" - textual header "/usr/include/linux/uinput.h" - textual header "/usr/include/linux/uio.h" - textual header "/usr/include/linux/ultrasound.h" - textual header "/usr/include/linux/un.h" - textual header "/usr/include/linux/unistd.h" - textual header "/usr/include/linux/unix_diag.h" - textual header "/usr/include/linux/usb/audio.h" - textual header "/usr/include/linux/usb/cdc-wdm.h" - textual header "/usr/include/linux/usb/cdc.h" - textual header "/usr/include/linux/usb/ch11.h" - textual header "/usr/include/linux/usb/ch9.h" - textual header "/usr/include/linux/usb/functionfs.h" - textual header "/usr/include/linux/usb/g_printer.h" - textual header "/usr/include/linux/usb/gadgetfs.h" - textual header "/usr/include/linux/usb/midi.h" - textual header "/usr/include/linux/usb/tmc.h" - textual header "/usr/include/linux/usb/video.h" - textual header "/usr/include/linux/usbdevice_fs.h" - textual header "/usr/include/linux/usbip.h" - textual header "/usr/include/linux/userfaultfd.h" - textual header "/usr/include/linux/utime.h" - textual header "/usr/include/linux/utsname.h" - textual header "/usr/include/linux/uuid.h" - textual header "/usr/include/linux/uvcvideo.h" - textual header "/usr/include/linux/v4l2-common.h" - textual header "/usr/include/linux/v4l2-controls.h" - textual header "/usr/include/linux/v4l2-dv-timings.h" - textual header "/usr/include/linux/v4l2-mediabus.h" - textual header "/usr/include/linux/v4l2-subdev.h" - textual header "/usr/include/linux/version.h" - textual header "/usr/include/linux/veth.h" - textual header "/usr/include/linux/vfio.h" - textual header "/usr/include/linux/vhost.h" - textual header "/usr/include/linux/videodev2.h" - textual header "/usr/include/linux/virtio_9p.h" - textual header "/usr/include/linux/virtio_balloon.h" - textual header "/usr/include/linux/virtio_blk.h" - textual header "/usr/include/linux/virtio_config.h" - textual header "/usr/include/linux/virtio_console.h" - textual header "/usr/include/linux/virtio_gpu.h" - textual header "/usr/include/linux/virtio_ids.h" - textual header "/usr/include/linux/virtio_input.h" - textual header "/usr/include/linux/virtio_net.h" - textual header "/usr/include/linux/virtio_pci.h" - textual header "/usr/include/linux/virtio_ring.h" - textual header "/usr/include/linux/virtio_rng.h" - textual header "/usr/include/linux/virtio_scsi.h" - textual header "/usr/include/linux/virtio_types.h" - textual header "/usr/include/linux/vm_sockets.h" - textual header "/usr/include/linux/vt.h" - textual header "/usr/include/linux/wait.h" - textual header "/usr/include/linux/wanrouter.h" - textual header "/usr/include/linux/watchdog.h" - textual header "/usr/include/linux/wimax.h" - textual header "/usr/include/linux/wimax/i2400m.h" - textual header "/usr/include/linux/wireless.h" - textual header "/usr/include/linux/x25.h" - textual header "/usr/include/linux/xattr.h" - textual header "/usr/include/linux/xfrm.h" - textual header "/usr/include/linux/xilinx-v4l2-controls.h" - textual header "/usr/include/linux/zorro.h" - textual header "/usr/include/linux/zorro_ids.h" - textual header "/usr/include/locale.h" - textual header "/usr/include/malloc.h" - textual header "/usr/include/math.h" - textual header "/usr/include/mcheck.h" - textual header "/usr/include/memory.h" - textual header "/usr/include/misc/cxl.h" - textual header "/usr/include/mntent.h" - textual header "/usr/include/monetary.h" - textual header "/usr/include/mqueue.h" - textual header "/usr/include/mtd/inftl-user.h" - textual header "/usr/include/mtd/mtd-abi.h" - textual header "/usr/include/mtd/mtd-user.h" - textual header "/usr/include/mtd/nftl-user.h" - textual header "/usr/include/mtd/ubi-user.h" - textual header "/usr/include/net/ethernet.h" - textual header "/usr/include/net/if.h" - textual header "/usr/include/net/if_arp.h" - textual header "/usr/include/net/if_packet.h" - textual header "/usr/include/net/if_ppp.h" - textual header "/usr/include/net/if_shaper.h" - textual header "/usr/include/net/if_slip.h" - textual header "/usr/include/net/ppp-comp.h" - textual header "/usr/include/net/ppp_defs.h" - textual header "/usr/include/net/route.h" - textual header "/usr/include/netash/ash.h" - textual header "/usr/include/netatalk/at.h" - textual header "/usr/include/netax25/ax25.h" - textual header "/usr/include/netdb.h" - textual header "/usr/include/neteconet/ec.h" - textual header "/usr/include/netinet/ether.h" - textual header "/usr/include/netinet/icmp6.h" - textual header "/usr/include/netinet/if_ether.h" - textual header "/usr/include/netinet/if_fddi.h" - textual header "/usr/include/netinet/if_tr.h" - textual header "/usr/include/netinet/igmp.h" - textual header "/usr/include/netinet/in.h" - textual header "/usr/include/netinet/in_systm.h" - textual header "/usr/include/netinet/ip.h" - textual header "/usr/include/netinet/ip6.h" - textual header "/usr/include/netinet/ip_icmp.h" - textual header "/usr/include/netinet/tcp.h" - textual header "/usr/include/netinet/udp.h" - textual header "/usr/include/netipx/ipx.h" - textual header "/usr/include/netiucv/iucv.h" - textual header "/usr/include/netpacket/packet.h" - textual header "/usr/include/netrom/netrom.h" - textual header "/usr/include/netrose/rose.h" - textual header "/usr/include/nfs/nfs.h" - textual header "/usr/include/nl_types.h" - textual header "/usr/include/nss.h" - textual header "/usr/include/obstack.h" - textual header "/usr/include/paths.h" - textual header "/usr/include/poll.h" - textual header "/usr/include/printf.h" - textual header "/usr/include/protocols/routed.h" - textual header "/usr/include/protocols/rwhod.h" - textual header "/usr/include/protocols/talkd.h" - textual header "/usr/include/protocols/timed.h" - textual header "/usr/include/pthread.h" - textual header "/usr/include/pty.h" - textual header "/usr/include/pwd.h" - textual header "/usr/include/python2.7/Python-ast.h" - textual header "/usr/include/python2.7/Python.h" - textual header "/usr/include/python2.7/abstract.h" - textual header "/usr/include/python2.7/asdl.h" - textual header "/usr/include/python2.7/ast.h" - textual header "/usr/include/python2.7/bitset.h" - textual header "/usr/include/python2.7/boolobject.h" - textual header "/usr/include/python2.7/bufferobject.h" - textual header "/usr/include/python2.7/bytearrayobject.h" - textual header "/usr/include/python2.7/bytes_methods.h" - textual header "/usr/include/python2.7/bytesobject.h" - textual header "/usr/include/python2.7/cStringIO.h" - textual header "/usr/include/python2.7/cellobject.h" - textual header "/usr/include/python2.7/ceval.h" - textual header "/usr/include/python2.7/classobject.h" - textual header "/usr/include/python2.7/cobject.h" - textual header "/usr/include/python2.7/code.h" - textual header "/usr/include/python2.7/codecs.h" - textual header "/usr/include/python2.7/compile.h" - textual header "/usr/include/python2.7/complexobject.h" - textual header "/usr/include/python2.7/datetime.h" - textual header "/usr/include/python2.7/descrobject.h" - textual header "/usr/include/python2.7/dictobject.h" - textual header "/usr/include/python2.7/dtoa.h" - textual header "/usr/include/python2.7/enumobject.h" - textual header "/usr/include/python2.7/errcode.h" - textual header "/usr/include/python2.7/eval.h" - textual header "/usr/include/python2.7/fileobject.h" - textual header "/usr/include/python2.7/floatobject.h" - textual header "/usr/include/python2.7/frameobject.h" - textual header "/usr/include/python2.7/funcobject.h" - textual header "/usr/include/python2.7/genobject.h" - textual header "/usr/include/python2.7/graminit.h" - textual header "/usr/include/python2.7/grammar.h" - textual header "/usr/include/python2.7/import.h" - textual header "/usr/include/python2.7/intobject.h" - textual header "/usr/include/python2.7/intrcheck.h" - textual header "/usr/include/python2.7/iterobject.h" - textual header "/usr/include/python2.7/listobject.h" - textual header "/usr/include/python2.7/longintrepr.h" - textual header "/usr/include/python2.7/longobject.h" - textual header "/usr/include/python2.7/marshal.h" - textual header "/usr/include/python2.7/memoryobject.h" - textual header "/usr/include/python2.7/metagrammar.h" - textual header "/usr/include/python2.7/methodobject.h" - textual header "/usr/include/python2.7/modsupport.h" - textual header "/usr/include/python2.7/moduleobject.h" - textual header "/usr/include/python2.7/node.h" - textual header "/usr/include/python2.7/object.h" - textual header "/usr/include/python2.7/objimpl.h" - textual header "/usr/include/python2.7/opcode.h" - textual header "/usr/include/python2.7/osdefs.h" - textual header "/usr/include/python2.7/parsetok.h" - textual header "/usr/include/python2.7/patchlevel.h" - textual header "/usr/include/python2.7/pgen.h" - textual header "/usr/include/python2.7/pgenheaders.h" - textual header "/usr/include/python2.7/py_curses.h" - textual header "/usr/include/python2.7/pyarena.h" - textual header "/usr/include/python2.7/pycapsule.h" - textual header "/usr/include/python2.7/pyconfig.h" - textual header "/usr/include/python2.7/pyctype.h" - textual header "/usr/include/python2.7/pydebug.h" - textual header "/usr/include/python2.7/pyerrors.h" - textual header "/usr/include/python2.7/pyexpat.h" - textual header "/usr/include/python2.7/pyfpe.h" - textual header "/usr/include/python2.7/pygetopt.h" - textual header "/usr/include/python2.7/pymacconfig.h" - textual header "/usr/include/python2.7/pymactoolbox.h" - textual header "/usr/include/python2.7/pymath.h" - textual header "/usr/include/python2.7/pymem.h" - textual header "/usr/include/python2.7/pyport.h" - textual header "/usr/include/python2.7/pystate.h" - textual header "/usr/include/python2.7/pystrcmp.h" - textual header "/usr/include/python2.7/pystrtod.h" - textual header "/usr/include/python2.7/pythonrun.h" - textual header "/usr/include/python2.7/pythread.h" - textual header "/usr/include/python2.7/rangeobject.h" - textual header "/usr/include/python2.7/setobject.h" - textual header "/usr/include/python2.7/sliceobject.h" - textual header "/usr/include/python2.7/stringobject.h" - textual header "/usr/include/python2.7/structmember.h" - textual header "/usr/include/python2.7/structseq.h" - textual header "/usr/include/python2.7/symtable.h" - textual header "/usr/include/python2.7/sysmodule.h" - textual header "/usr/include/python2.7/timefuncs.h" - textual header "/usr/include/python2.7/token.h" - textual header "/usr/include/python2.7/traceback.h" - textual header "/usr/include/python2.7/tupleobject.h" - textual header "/usr/include/python2.7/ucnhash.h" - textual header "/usr/include/python2.7/unicodeobject.h" - textual header "/usr/include/python2.7/warnings.h" - textual header "/usr/include/python2.7/weakrefobject.h" - textual header "/usr/include/python3.5/Python-ast.h" - textual header "/usr/include/python3.5/Python.h" - textual header "/usr/include/python3.5/abstract.h" - textual header "/usr/include/python3.5/accu.h" - textual header "/usr/include/python3.5/asdl.h" - textual header "/usr/include/python3.5/ast.h" - textual header "/usr/include/python3.5/bitset.h" - textual header "/usr/include/python3.5/bltinmodule.h" - textual header "/usr/include/python3.5/boolobject.h" - textual header "/usr/include/python3.5/bytearrayobject.h" - textual header "/usr/include/python3.5/bytes_methods.h" - textual header "/usr/include/python3.5/bytesobject.h" - textual header "/usr/include/python3.5/cellobject.h" - textual header "/usr/include/python3.5/ceval.h" - textual header "/usr/include/python3.5/classobject.h" - textual header "/usr/include/python3.5/code.h" - textual header "/usr/include/python3.5/codecs.h" - textual header "/usr/include/python3.5/compile.h" - textual header "/usr/include/python3.5/complexobject.h" - textual header "/usr/include/python3.5/datetime.h" - textual header "/usr/include/python3.5/descrobject.h" - textual header "/usr/include/python3.5/dictobject.h" - textual header "/usr/include/python3.5/dtoa.h" - textual header "/usr/include/python3.5/dynamic_annotations.h" - textual header "/usr/include/python3.5/enumobject.h" - textual header "/usr/include/python3.5/errcode.h" - textual header "/usr/include/python3.5/eval.h" - textual header "/usr/include/python3.5/fileobject.h" - textual header "/usr/include/python3.5/fileutils.h" - textual header "/usr/include/python3.5/floatobject.h" - textual header "/usr/include/python3.5/frameobject.h" - textual header "/usr/include/python3.5/funcobject.h" - textual header "/usr/include/python3.5/genobject.h" - textual header "/usr/include/python3.5/graminit.h" - textual header "/usr/include/python3.5/grammar.h" - textual header "/usr/include/python3.5/import.h" - textual header "/usr/include/python3.5/intrcheck.h" - textual header "/usr/include/python3.5/iterobject.h" - textual header "/usr/include/python3.5/listobject.h" - textual header "/usr/include/python3.5/longintrepr.h" - textual header "/usr/include/python3.5/longobject.h" - textual header "/usr/include/python3.5/marshal.h" - textual header "/usr/include/python3.5/memoryobject.h" - textual header "/usr/include/python3.5/metagrammar.h" - textual header "/usr/include/python3.5/methodobject.h" - textual header "/usr/include/python3.5/modsupport.h" - textual header "/usr/include/python3.5/moduleobject.h" - textual header "/usr/include/python3.5/namespaceobject.h" - textual header "/usr/include/python3.5/node.h" - textual header "/usr/include/python3.5/object.h" - textual header "/usr/include/python3.5/objimpl.h" - textual header "/usr/include/python3.5/odictobject.h" - textual header "/usr/include/python3.5/opcode.h" - textual header "/usr/include/python3.5/osdefs.h" - textual header "/usr/include/python3.5/parsetok.h" - textual header "/usr/include/python3.5/patchlevel.h" - textual header "/usr/include/python3.5/pgen.h" - textual header "/usr/include/python3.5/pgenheaders.h" - textual header "/usr/include/python3.5/py_curses.h" - textual header "/usr/include/python3.5/pyarena.h" - textual header "/usr/include/python3.5/pyatomic.h" - textual header "/usr/include/python3.5/pycapsule.h" - textual header "/usr/include/python3.5/pyconfig.h" - textual header "/usr/include/python3.5/pyctype.h" - textual header "/usr/include/python3.5/pydebug.h" - textual header "/usr/include/python3.5/pyerrors.h" - textual header "/usr/include/python3.5/pyexpat.h" - textual header "/usr/include/python3.5/pyfpe.h" - textual header "/usr/include/python3.5/pygetopt.h" - textual header "/usr/include/python3.5/pyhash.h" - textual header "/usr/include/python3.5/pylifecycle.h" - textual header "/usr/include/python3.5/pymacconfig.h" - textual header "/usr/include/python3.5/pymacro.h" - textual header "/usr/include/python3.5/pymath.h" - textual header "/usr/include/python3.5/pymem.h" - textual header "/usr/include/python3.5/pyport.h" - textual header "/usr/include/python3.5/pystate.h" - textual header "/usr/include/python3.5/pystrcmp.h" - textual header "/usr/include/python3.5/pystrhex.h" - textual header "/usr/include/python3.5/pystrtod.h" - textual header "/usr/include/python3.5/pythonrun.h" - textual header "/usr/include/python3.5/pythread.h" - textual header "/usr/include/python3.5/pytime.h" - textual header "/usr/include/python3.5/rangeobject.h" - textual header "/usr/include/python3.5/setobject.h" - textual header "/usr/include/python3.5/sliceobject.h" - textual header "/usr/include/python3.5/structmember.h" - textual header "/usr/include/python3.5/structseq.h" - textual header "/usr/include/python3.5/symtable.h" - textual header "/usr/include/python3.5/sysmodule.h" - textual header "/usr/include/python3.5/token.h" - textual header "/usr/include/python3.5/traceback.h" - textual header "/usr/include/python3.5/tupleobject.h" - textual header "/usr/include/python3.5/typeslots.h" - textual header "/usr/include/python3.5/ucnhash.h" - textual header "/usr/include/python3.5/unicodeobject.h" - textual header "/usr/include/python3.5/warnings.h" - textual header "/usr/include/python3.5/weakrefobject.h" - textual header "/usr/include/python3.5m/Python-ast.h" - textual header "/usr/include/python3.5m/Python.h" - textual header "/usr/include/python3.5m/abstract.h" - textual header "/usr/include/python3.5m/accu.h" - textual header "/usr/include/python3.5m/asdl.h" - textual header "/usr/include/python3.5m/ast.h" - textual header "/usr/include/python3.5m/bitset.h" - textual header "/usr/include/python3.5m/bltinmodule.h" - textual header "/usr/include/python3.5m/boolobject.h" - textual header "/usr/include/python3.5m/bytearrayobject.h" - textual header "/usr/include/python3.5m/bytes_methods.h" - textual header "/usr/include/python3.5m/bytesobject.h" - textual header "/usr/include/python3.5m/cellobject.h" - textual header "/usr/include/python3.5m/ceval.h" - textual header "/usr/include/python3.5m/classobject.h" - textual header "/usr/include/python3.5m/code.h" - textual header "/usr/include/python3.5m/codecs.h" - textual header "/usr/include/python3.5m/compile.h" - textual header "/usr/include/python3.5m/complexobject.h" - textual header "/usr/include/python3.5m/datetime.h" - textual header "/usr/include/python3.5m/descrobject.h" - textual header "/usr/include/python3.5m/dictobject.h" - textual header "/usr/include/python3.5m/dtoa.h" - textual header "/usr/include/python3.5m/dynamic_annotations.h" - textual header "/usr/include/python3.5m/enumobject.h" - textual header "/usr/include/python3.5m/errcode.h" - textual header "/usr/include/python3.5m/eval.h" - textual header "/usr/include/python3.5m/fileobject.h" - textual header "/usr/include/python3.5m/fileutils.h" - textual header "/usr/include/python3.5m/floatobject.h" - textual header "/usr/include/python3.5m/frameobject.h" - textual header "/usr/include/python3.5m/funcobject.h" - textual header "/usr/include/python3.5m/genobject.h" - textual header "/usr/include/python3.5m/graminit.h" - textual header "/usr/include/python3.5m/grammar.h" - textual header "/usr/include/python3.5m/import.h" - textual header "/usr/include/python3.5m/intrcheck.h" - textual header "/usr/include/python3.5m/iterobject.h" - textual header "/usr/include/python3.5m/listobject.h" - textual header "/usr/include/python3.5m/longintrepr.h" - textual header "/usr/include/python3.5m/longobject.h" - textual header "/usr/include/python3.5m/marshal.h" - textual header "/usr/include/python3.5m/memoryobject.h" - textual header "/usr/include/python3.5m/metagrammar.h" - textual header "/usr/include/python3.5m/methodobject.h" - textual header "/usr/include/python3.5m/modsupport.h" - textual header "/usr/include/python3.5m/moduleobject.h" - textual header "/usr/include/python3.5m/namespaceobject.h" - textual header "/usr/include/python3.5m/node.h" - textual header "/usr/include/python3.5m/object.h" - textual header "/usr/include/python3.5m/objimpl.h" - textual header "/usr/include/python3.5m/odictobject.h" - textual header "/usr/include/python3.5m/opcode.h" - textual header "/usr/include/python3.5m/osdefs.h" - textual header "/usr/include/python3.5m/parsetok.h" - textual header "/usr/include/python3.5m/patchlevel.h" - textual header "/usr/include/python3.5m/pgen.h" - textual header "/usr/include/python3.5m/pgenheaders.h" - textual header "/usr/include/python3.5m/py_curses.h" - textual header "/usr/include/python3.5m/pyarena.h" - textual header "/usr/include/python3.5m/pyatomic.h" - textual header "/usr/include/python3.5m/pycapsule.h" - textual header "/usr/include/python3.5m/pyconfig.h" - textual header "/usr/include/python3.5m/pyctype.h" - textual header "/usr/include/python3.5m/pydebug.h" - textual header "/usr/include/python3.5m/pyerrors.h" - textual header "/usr/include/python3.5m/pyexpat.h" - textual header "/usr/include/python3.5m/pyfpe.h" - textual header "/usr/include/python3.5m/pygetopt.h" - textual header "/usr/include/python3.5m/pyhash.h" - textual header "/usr/include/python3.5m/pylifecycle.h" - textual header "/usr/include/python3.5m/pymacconfig.h" - textual header "/usr/include/python3.5m/pymacro.h" - textual header "/usr/include/python3.5m/pymath.h" - textual header "/usr/include/python3.5m/pymem.h" - textual header "/usr/include/python3.5m/pyport.h" - textual header "/usr/include/python3.5m/pystate.h" - textual header "/usr/include/python3.5m/pystrcmp.h" - textual header "/usr/include/python3.5m/pystrhex.h" - textual header "/usr/include/python3.5m/pystrtod.h" - textual header "/usr/include/python3.5m/pythonrun.h" - textual header "/usr/include/python3.5m/pythread.h" - textual header "/usr/include/python3.5m/pytime.h" - textual header "/usr/include/python3.5m/rangeobject.h" - textual header "/usr/include/python3.5m/setobject.h" - textual header "/usr/include/python3.5m/sliceobject.h" - textual header "/usr/include/python3.5m/structmember.h" - textual header "/usr/include/python3.5m/structseq.h" - textual header "/usr/include/python3.5m/symtable.h" - textual header "/usr/include/python3.5m/sysmodule.h" - textual header "/usr/include/python3.5m/token.h" - textual header "/usr/include/python3.5m/traceback.h" - textual header "/usr/include/python3.5m/tupleobject.h" - textual header "/usr/include/python3.5m/typeslots.h" - textual header "/usr/include/python3.5m/ucnhash.h" - textual header "/usr/include/python3.5m/unicodeobject.h" - textual header "/usr/include/python3.5m/warnings.h" - textual header "/usr/include/python3.5m/weakrefobject.h" - textual header "/usr/include/rdma/hfi/hfi1_user.h" - textual header "/usr/include/rdma/ib_user_cm.h" - textual header "/usr/include/rdma/ib_user_mad.h" - textual header "/usr/include/rdma/ib_user_sa.h" - textual header "/usr/include/rdma/ib_user_verbs.h" - textual header "/usr/include/rdma/rdma_netlink.h" - textual header "/usr/include/rdma/rdma_user_cm.h" - textual header "/usr/include/re_comp.h" - textual header "/usr/include/regex.h" - textual header "/usr/include/regexp.h" - textual header "/usr/include/resolv.h" - textual header "/usr/include/rpc/auth.h" - textual header "/usr/include/rpc/auth_des.h" - textual header "/usr/include/rpc/auth_unix.h" - textual header "/usr/include/rpc/clnt.h" - textual header "/usr/include/rpc/des_crypt.h" - textual header "/usr/include/rpc/key_prot.h" - textual header "/usr/include/rpc/netdb.h" - textual header "/usr/include/rpc/pmap_clnt.h" - textual header "/usr/include/rpc/pmap_prot.h" - textual header "/usr/include/rpc/pmap_rmt.h" - textual header "/usr/include/rpc/rpc.h" - textual header "/usr/include/rpc/rpc_des.h" - textual header "/usr/include/rpc/rpc_msg.h" - textual header "/usr/include/rpc/svc.h" - textual header "/usr/include/rpc/svc_auth.h" - textual header "/usr/include/rpc/types.h" - textual header "/usr/include/rpc/xdr.h" - textual header "/usr/include/rpcsvc/bootparam.h" - textual header "/usr/include/rpcsvc/bootparam_prot.h" - textual header "/usr/include/rpcsvc/bootparam_prot.x" - textual header "/usr/include/rpcsvc/key_prot.h" - textual header "/usr/include/rpcsvc/key_prot.x" - textual header "/usr/include/rpcsvc/klm_prot.h" - textual header "/usr/include/rpcsvc/klm_prot.x" - textual header "/usr/include/rpcsvc/mount.h" - textual header "/usr/include/rpcsvc/mount.x" - textual header "/usr/include/rpcsvc/nfs_prot.h" - textual header "/usr/include/rpcsvc/nfs_prot.x" - textual header "/usr/include/rpcsvc/nis.h" - textual header "/usr/include/rpcsvc/nis.x" - textual header "/usr/include/rpcsvc/nis_callback.h" - textual header "/usr/include/rpcsvc/nis_callback.x" - textual header "/usr/include/rpcsvc/nis_object.x" - textual header "/usr/include/rpcsvc/nis_tags.h" - textual header "/usr/include/rpcsvc/nislib.h" - textual header "/usr/include/rpcsvc/nlm_prot.h" - textual header "/usr/include/rpcsvc/nlm_prot.x" - textual header "/usr/include/rpcsvc/rex.h" - textual header "/usr/include/rpcsvc/rex.x" - textual header "/usr/include/rpcsvc/rquota.h" - textual header "/usr/include/rpcsvc/rquota.x" - textual header "/usr/include/rpcsvc/rstat.h" - textual header "/usr/include/rpcsvc/rstat.x" - textual header "/usr/include/rpcsvc/rusers.h" - textual header "/usr/include/rpcsvc/rusers.x" - textual header "/usr/include/rpcsvc/sm_inter.h" - textual header "/usr/include/rpcsvc/sm_inter.x" - textual header "/usr/include/rpcsvc/spray.h" - textual header "/usr/include/rpcsvc/spray.x" - textual header "/usr/include/rpcsvc/yp.h" - textual header "/usr/include/rpcsvc/yp.x" - textual header "/usr/include/rpcsvc/yp_prot.h" - textual header "/usr/include/rpcsvc/ypclnt.h" - textual header "/usr/include/rpcsvc/yppasswd.h" - textual header "/usr/include/rpcsvc/yppasswd.x" - textual header "/usr/include/rpcsvc/ypupd.h" - textual header "/usr/include/sched.h" - textual header "/usr/include/scsi/cxlflash_ioctl.h" - textual header "/usr/include/scsi/fc/fc_els.h" - textual header "/usr/include/scsi/fc/fc_fs.h" - textual header "/usr/include/scsi/fc/fc_gs.h" - textual header "/usr/include/scsi/fc/fc_ns.h" - textual header "/usr/include/scsi/scsi.h" - textual header "/usr/include/scsi/scsi_bsg_fc.h" - textual header "/usr/include/scsi/scsi_ioctl.h" - textual header "/usr/include/scsi/scsi_netlink.h" - textual header "/usr/include/scsi/scsi_netlink_fc.h" - textual header "/usr/include/scsi/sg.h" - textual header "/usr/include/search.h" - textual header "/usr/include/semaphore.h" - textual header "/usr/include/setjmp.h" - textual header "/usr/include/sgtty.h" - textual header "/usr/include/shadow.h" - textual header "/usr/include/signal.h" - textual header "/usr/include/sound/asequencer.h" - textual header "/usr/include/sound/asound.h" - textual header "/usr/include/sound/asound_fm.h" - textual header "/usr/include/sound/compress_offload.h" - textual header "/usr/include/sound/compress_params.h" - textual header "/usr/include/sound/emu10k1.h" - textual header "/usr/include/sound/firewire.h" - textual header "/usr/include/sound/hdsp.h" - textual header "/usr/include/sound/hdspm.h" - textual header "/usr/include/sound/sb16_csp.h" - textual header "/usr/include/sound/sfnt_info.h" - textual header "/usr/include/spawn.h" - textual header "/usr/include/stab.h" - textual header "/usr/include/stdc-predef.h" - textual header "/usr/include/stdint.h" - textual header "/usr/include/stdio.h" - textual header "/usr/include/stdio_ext.h" - textual header "/usr/include/stdlib.h" - textual header "/usr/include/string.h" - textual header "/usr/include/strings.h" - textual header "/usr/include/stropts.h" - textual header "/usr/include/syscall.h" - textual header "/usr/include/sysexits.h" - textual header "/usr/include/syslog.h" - textual header "/usr/include/tar.h" - textual header "/usr/include/termio.h" - textual header "/usr/include/termios.h" - textual header "/usr/include/tgmath.h" - textual header "/usr/include/thread_db.h" - textual header "/usr/include/time.h" - textual header "/usr/include/ttyent.h" - textual header "/usr/include/uchar.h" - textual header "/usr/include/ucontext.h" - textual header "/usr/include/ulimit.h" - textual header "/usr/include/unistd.h" - textual header "/usr/include/ustat.h" - textual header "/usr/include/utime.h" - textual header "/usr/include/utmp.h" - textual header "/usr/include/utmpx.h" - textual header "/usr/include/values.h" - textual header "/usr/include/video/edid.h" - textual header "/usr/include/video/sisfb.h" - textual header "/usr/include/video/uvesafb.h" - textual header "/usr/include/wait.h" - textual header "/usr/include/wchar.h" - textual header "/usr/include/wctype.h" - textual header "/usr/include/wordexp.h" - textual header "/usr/include/x86_64-linux-gnu/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/asm/auxvec.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bitsperlong.h" - textual header "/usr/include/x86_64-linux-gnu/asm/boot.h" - textual header "/usr/include/x86_64-linux-gnu/asm/bootparam.h" - textual header "/usr/include/x86_64-linux-gnu/asm/byteorder.h" - textual header "/usr/include/x86_64-linux-gnu/asm/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/asm/e820.h" - textual header "/usr/include/x86_64-linux-gnu/asm/errno.h" - textual header "/usr/include/x86_64-linux-gnu/asm/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hw_breakpoint.h" - textual header "/usr/include/x86_64-linux-gnu/asm/hyperv.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ipcbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ist.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_para.h" - textual header "/usr/include/x86_64-linux-gnu/asm/kvm_perf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ldt.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mce.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mman.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msgbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/msr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/mtrr.h" - textual header "/usr/include/x86_64-linux-gnu/asm/param.h" - textual header "/usr/include/x86_64-linux-gnu/asm/perf_regs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/poll.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/posix_types_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/asm/processor-flags.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace-abi.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/asm/resource.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sembuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/setup.h" - textual header "/usr/include/x86_64-linux-gnu/asm/shmbuf.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sigcontext32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/asm/signal.h" - textual header "/usr/include/x86_64-linux-gnu/asm/socket.h" - textual header "/usr/include/x86_64-linux-gnu/asm/sockios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/stat.h" - textual header "/usr/include/x86_64-linux-gnu/asm/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/asm/svm.h" - textual header "/usr/include/x86_64-linux-gnu/asm/swab.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termbits.h" - textual header "/usr/include/x86_64-linux-gnu/asm/termios.h" - textual header "/usr/include/x86_64-linux-gnu/asm/types.h" - textual header "/usr/include/x86_64-linux-gnu/asm/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_64.h" - textual header "/usr/include/x86_64-linux-gnu/asm/unistd_x32.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vmx.h" - textual header "/usr/include/x86_64-linux-gnu/asm/vsyscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/a.out.h" - textual header "/usr/include/x86_64-linux-gnu/bits/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap-16.h" - textual header "/usr/include/x86_64-linux-gnu/bits/byteswap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/cmathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/confname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dirent.h" - textual header "/usr/include/x86_64-linux-gnu/bits/dlfcn.h" - textual header "/usr/include/x86_64-linux-gnu/bits/elfclass.h" - textual header "/usr/include/x86_64-linux-gnu/bits/endian.h" - textual header "/usr/include/x86_64-linux-gnu/bits/environments.h" - textual header "/usr/include/x86_64-linux-gnu/bits/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/errno.h" - textual header "/usr/include/x86_64-linux-gnu/bits/error.h" - textual header "/usr/include/x86_64-linux-gnu/bits/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fcntl2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenv.h" - textual header "/usr/include/x86_64-linux-gnu/bits/fenvinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_val.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_valf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/huge_vall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/hwcap.h" - textual header "/usr/include/x86_64-linux-gnu/bits/in.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inf.h" - textual header "/usr/include/x86_64-linux-gnu/bits/initspin.h" - textual header "/usr/include/x86_64-linux-gnu/bits/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctl-types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ioctls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ipctypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/libm-simd-decl-stubs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/link.h" - textual header "/usr/include/x86_64-linux-gnu/bits/local_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/locale.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-finite.h" - textual header "/usr/include/x86_64-linux-gnu/bits/math-vector.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathcalls.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathdef.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mathinline.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman-linux.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mman.h" - textual header "/usr/include/x86_64-linux-gnu/bits/monetary-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue.h" - textual header "/usr/include/x86_64-linux-gnu/bits/mqueue2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/msq.h" - textual header "/usr/include/x86_64-linux-gnu/bits/nan.h" - textual header "/usr/include/x86_64-linux-gnu/bits/netdb.h" - textual header "/usr/include/x86_64-linux-gnu/bits/param.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll.h" - textual header "/usr/include/x86_64-linux-gnu/bits/poll2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix1_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix2_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/posix_opt.h" - textual header "/usr/include/x86_64-linux-gnu/bits/printf-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/resource.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sched.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select.h" - textual header "/usr/include/x86_64-linux-gnu/bits/select2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sem.h" - textual header "/usr/include/x86_64-linux-gnu/bits/semaphore.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/setjmp2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/shm.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigaction.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigcontext.h" - textual header "/usr/include/x86_64-linux-gnu/bits/siginfo.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/signum.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigset.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigstack.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sigthread.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sockaddr.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/socket_type.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stab.def" - textual header "/usr/include/x86_64-linux-gnu/bits/stat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdio_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-float.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stdlib.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/string3.h" - textual header "/usr/include/x86_64-linux-gnu/bits/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sys_errlist.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/bits/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog-path.h" - textual header "/usr/include/x86_64-linux-gnu/bits/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/bits/termios.h" - textual header "/usr/include/x86_64-linux-gnu/bits/time.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/timex.h" - textual header "/usr/include/x86_64-linux-gnu/bits/types.h" - textual header "/usr/include/x86_64-linux-gnu/bits/typesizes.h" - textual header "/usr/include/x86_64-linux-gnu/bits/uio.h" - textual header "/usr/include/x86_64-linux-gnu/bits/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/bits/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmp.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utmpx.h" - textual header "/usr/include/x86_64-linux-gnu/bits/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitflags.h" - textual header "/usr/include/x86_64-linux-gnu/bits/waitstatus.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar-ldbl.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wchar2.h" - textual header "/usr/include/x86_64-linux-gnu/bits/wordsize.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xopen_lim.h" - textual header "/usr/include/x86_64-linux-gnu/bits/xtitypes.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5/ext/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/expat_config.h" - textual header "/usr/include/x86_64-linux-gnu/fpu_control.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/lib-names.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/libc-version.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs-64.h" - textual header "/usr/include/x86_64-linux-gnu/gnu/stubs.h" - textual header "/usr/include/x86_64-linux-gnu/ieee754.h" - textual header "/usr/include/x86_64-linux-gnu/python2.7/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/python3.5m/pyconfig.h" - textual header "/usr/include/x86_64-linux-gnu/sys/acct.h" - textual header "/usr/include/x86_64-linux-gnu/sys/auxv.h" - textual header "/usr/include/x86_64-linux-gnu/sys/bitypes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/cdefs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/debugreg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/dir.h" - textual header "/usr/include/x86_64-linux-gnu/sys/elf.h" - textual header "/usr/include/x86_64-linux-gnu/sys/epoll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/errno.h" - textual header "/usr/include/x86_64-linux-gnu/sys/eventfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fanotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fcntl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/file.h" - textual header "/usr/include/x86_64-linux-gnu/sys/fsuid.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon.h" - textual header "/usr/include/x86_64-linux-gnu/sys/gmon_out.h" - textual header "/usr/include/x86_64-linux-gnu/sys/inotify.h" - textual header "/usr/include/x86_64-linux-gnu/sys/io.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ioctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ipc.h" - textual header "/usr/include/x86_64-linux-gnu/sys/kd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/klog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mman.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mount.h" - textual header "/usr/include/x86_64-linux-gnu/sys/msg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/mtio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/param.h" - textual header "/usr/include/x86_64-linux-gnu/sys/pci.h" - textual header "/usr/include/x86_64-linux-gnu/sys/perm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/personality.h" - textual header "/usr/include/x86_64-linux-gnu/sys/poll.h" - textual header "/usr/include/x86_64-linux-gnu/sys/prctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/procfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/profil.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ptrace.h" - textual header "/usr/include/x86_64-linux-gnu/sys/queue.h" - textual header "/usr/include/x86_64-linux-gnu/sys/quota.h" - textual header "/usr/include/x86_64-linux-gnu/sys/raw.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reboot.h" - textual header "/usr/include/x86_64-linux-gnu/sys/reg.h" - textual header "/usr/include/x86_64-linux-gnu/sys/resource.h" - textual header "/usr/include/x86_64-linux-gnu/sys/select.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sem.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sendfile.h" - textual header "/usr/include/x86_64-linux-gnu/sys/shm.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signal.h" - textual header "/usr/include/x86_64-linux-gnu/sys/signalfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socket.h" - textual header "/usr/include/x86_64-linux-gnu/sys/socketvar.h" - textual header "/usr/include/x86_64-linux-gnu/sys/soundcard.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/statvfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/stropts.h" - textual header "/usr/include/x86_64-linux-gnu/sys/swap.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syscall.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysctl.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysinfo.h" - textual header "/usr/include/x86_64-linux-gnu/sys/syslog.h" - textual header "/usr/include/x86_64-linux-gnu/sys/sysmacros.h" - textual header "/usr/include/x86_64-linux-gnu/sys/termios.h" - textual header "/usr/include/x86_64-linux-gnu/sys/time.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timeb.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timerfd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/times.h" - textual header "/usr/include/x86_64-linux-gnu/sys/timex.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttychars.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ttydefaults.h" - textual header "/usr/include/x86_64-linux-gnu/sys/types.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ucontext.h" - textual header "/usr/include/x86_64-linux-gnu/sys/uio.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ultrasound.h" - textual header "/usr/include/x86_64-linux-gnu/sys/un.h" - textual header "/usr/include/x86_64-linux-gnu/sys/unistd.h" - textual header "/usr/include/x86_64-linux-gnu/sys/user.h" - textual header "/usr/include/x86_64-linux-gnu/sys/ustat.h" - textual header "/usr/include/x86_64-linux-gnu/sys/utsname.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vfs.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vlimit.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vm86.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vt.h" - textual header "/usr/include/x86_64-linux-gnu/sys/vtimes.h" - textual header "/usr/include/x86_64-linux-gnu/sys/wait.h" - textual header "/usr/include/x86_64-linux-gnu/sys/xattr.h" - textual header "/usr/include/xen/evtchn.h" - textual header "/usr/include/xen/gntalloc.h" - textual header "/usr/include/xen/gntdev.h" - textual header "/usr/include/xen/privcmd.h" - textual header "/usr/include/xlocale.h" - textual header "/usr/local/lib/clang/11.0.0/share/asan_blacklist.txt" - textual header "/usr/local/lib/clang/11.0.0/share/msan_blacklist.txt" - textual header "/usr/include/c++/5.4.0/algorithm" - textual header "/usr/include/c++/5.4.0/array" - textual header "/usr/include/c++/5.4.0/atomic" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" - textual header "/usr/include/c++/5.4.0/bits/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/bits/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/bits/allocated_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/allocator.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_base.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_futex.h" - textual header "/usr/include/c++/5.4.0/bits/atomic_lockfree_defines.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.h" - textual header "/usr/include/c++/5.4.0/bits/basic_ios.tcc" - textual header "/usr/include/c++/5.4.0/bits/basic_string.h" - textual header "/usr/include/c++/5.4.0/bits/basic_string.tcc" - textual header "/usr/include/c++/5.4.0/bits/boost_concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/c++0x_warning.h" - textual header "/usr/include/c++/5.4.0/bits/c++14_warning.h" - textual header "/usr/include/c++/5.4.0/bits/char_traits.h" - textual header "/usr/include/c++/5.4.0/bits/codecvt.h" - textual header "/usr/include/c++/5.4.0/bits/concept_check.h" - textual header "/usr/include/c++/5.4.0/bits/cpp_type_traits.h" - textual header "/usr/include/c++/5.4.0/bits/cxxabi_forced.h" - textual header "/usr/include/c++/5.4.0/bits/deque.tcc" - textual header "/usr/include/c++/5.4.0/bits/enable_special_members.h" - textual header "/usr/include/c++/5.4.0/bits/exception_defines.h" - textual header "/usr/include/c++/5.4.0/bits/exception_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.h" - textual header "/usr/include/c++/5.4.0/bits/forward_list.tcc" - textual header "/usr/include/c++/5.4.0/bits/fstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/functexcept.h" - textual header "/usr/include/c++/5.4.0/bits/functional_hash.h" - textual header "/usr/include/c++/5.4.0/bits/gslice.h" - textual header "/usr/include/c++/5.4.0/bits/gslice_array.h" - textual header "/usr/include/c++/5.4.0/bits/hash_bytes.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable.h" - textual header "/usr/include/c++/5.4.0/bits/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/bits/indirect_array.h" - textual header "/usr/include/c++/5.4.0/bits/ios_base.h" - textual header "/usr/include/c++/5.4.0/bits/istream.tcc" - textual header "/usr/include/c++/5.4.0/bits/list.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.h" - textual header "/usr/include/c++/5.4.0/bits/locale_classes.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_conv.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets.tcc" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.h" - textual header "/usr/include/c++/5.4.0/bits/locale_facets_nonio.tcc" - textual header "/usr/include/c++/5.4.0/bits/localefwd.h" - textual header "/usr/include/c++/5.4.0/bits/mask_array.h" - textual header "/usr/include/c++/5.4.0/bits/memoryfwd.h" - textual header "/usr/include/c++/5.4.0/bits/move.h" - textual header "/usr/include/c++/5.4.0/bits/nested_exception.h" - textual header "/usr/include/c++/5.4.0/bits/ostream.tcc" - textual header "/usr/include/c++/5.4.0/bits/ostream_insert.h" - textual header "/usr/include/c++/5.4.0/bits/parse_numbers.h" - textual header "/usr/include/c++/5.4.0/bits/postypes.h" - textual header "/usr/include/c++/5.4.0/bits/predefined_ops.h" - textual header "/usr/include/c++/5.4.0/bits/ptr_traits.h" - textual header "/usr/include/c++/5.4.0/bits/quoted_string.h" - textual header "/usr/include/c++/5.4.0/bits/random.h" - textual header "/usr/include/c++/5.4.0/bits/random.tcc" - textual header "/usr/include/c++/5.4.0/bits/range_access.h" - textual header "/usr/include/c++/5.4.0/bits/regex.h" - textual header "/usr/include/c++/5.4.0/bits/regex.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.h" - textual header "/usr/include/c++/5.4.0/bits/regex_automaton.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.h" - textual header "/usr/include/c++/5.4.0/bits/regex_compiler.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_constants.h" - textual header "/usr/include/c++/5.4.0/bits/regex_error.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.h" - textual header "/usr/include/c++/5.4.0/bits/regex_executor.tcc" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.h" - textual header "/usr/include/c++/5.4.0/bits/regex_scanner.tcc" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_atomic.h" - textual header "/usr/include/c++/5.4.0/bits/shared_ptr_base.h" - textual header "/usr/include/c++/5.4.0/bits/slice_array.h" - textual header "/usr/include/c++/5.4.0/bits/sstream.tcc" - textual header "/usr/include/c++/5.4.0/bits/stl_algo.h" - textual header "/usr/include/c++/5.4.0/bits/stl_algobase.h" - textual header "/usr/include/c++/5.4.0/bits/stl_bvector.h" - textual header "/usr/include/c++/5.4.0/bits/stl_construct.h" - textual header "/usr/include/c++/5.4.0/bits/stl_deque.h" - textual header "/usr/include/c++/5.4.0/bits/stl_function.h" - textual header "/usr/include/c++/5.4.0/bits/stl_heap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_funcs.h" - textual header "/usr/include/c++/5.4.0/bits/stl_iterator_base_types.h" - textual header "/usr/include/c++/5.4.0/bits/stl_list.h" - textual header "/usr/include/c++/5.4.0/bits/stl_map.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multimap.h" - textual header "/usr/include/c++/5.4.0/bits/stl_multiset.h" - textual header "/usr/include/c++/5.4.0/bits/stl_numeric.h" - textual header "/usr/include/c++/5.4.0/bits/stl_pair.h" - textual header "/usr/include/c++/5.4.0/bits/stl_queue.h" - textual header "/usr/include/c++/5.4.0/bits/stl_raw_storage_iter.h" - textual header "/usr/include/c++/5.4.0/bits/stl_relops.h" - textual header "/usr/include/c++/5.4.0/bits/stl_set.h" - textual header "/usr/include/c++/5.4.0/bits/stl_stack.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tempbuf.h" - textual header "/usr/include/c++/5.4.0/bits/stl_tree.h" - textual header "/usr/include/c++/5.4.0/bits/stl_uninitialized.h" - textual header "/usr/include/c++/5.4.0/bits/stl_vector.h" - textual header "/usr/include/c++/5.4.0/bits/stream_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/streambuf.tcc" - textual header "/usr/include/c++/5.4.0/bits/streambuf_iterator.h" - textual header "/usr/include/c++/5.4.0/bits/stringfwd.h" - textual header "/usr/include/c++/5.4.0/bits/uniform_int_dist.h" - textual header "/usr/include/c++/5.4.0/bits/unique_ptr.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_map.h" - textual header "/usr/include/c++/5.4.0/bits/unordered_set.h" - textual header "/usr/include/c++/5.4.0/bits/uses_allocator.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_after.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.h" - textual header "/usr/include/c++/5.4.0/bits/valarray_array.tcc" - textual header "/usr/include/c++/5.4.0/bits/valarray_before.h" - textual header "/usr/include/c++/5.4.0/bits/vector.tcc" - textual header "/usr/include/c++/5.4.0/bitset" - textual header "/usr/include/c++/5.4.0/cassert" - textual header "/usr/include/c++/5.4.0/ccomplex" - textual header "/usr/include/c++/5.4.0/cctype" - textual header "/usr/include/c++/5.4.0/cerrno" - textual header "/usr/include/c++/5.4.0/cfenv" - textual header "/usr/include/c++/5.4.0/cfloat" - textual header "/usr/include/c++/5.4.0/chrono" - textual header "/usr/include/c++/5.4.0/cinttypes" - textual header "/usr/include/c++/5.4.0/ciso646" - textual header "/usr/include/c++/5.4.0/climits" - textual header "/usr/include/c++/5.4.0/clocale" - textual header "/usr/include/c++/5.4.0/cmath" - textual header "/usr/include/c++/5.4.0/codecvt" - textual header "/usr/include/c++/5.4.0/complex" - textual header "/usr/include/c++/5.4.0/complex.h" - textual header "/usr/include/c++/5.4.0/condition_variable" - textual header "/usr/include/c++/5.4.0/csetjmp" - textual header "/usr/include/c++/5.4.0/csignal" - textual header "/usr/include/c++/5.4.0/cstdalign" - textual header "/usr/include/c++/5.4.0/cstdarg" - textual header "/usr/include/c++/5.4.0/cstdbool" - textual header "/usr/include/c++/5.4.0/cstddef" - textual header "/usr/include/c++/5.4.0/cstdint" - textual header "/usr/include/c++/5.4.0/cstdio" - textual header "/usr/include/c++/5.4.0/cstdlib" - textual header "/usr/include/c++/5.4.0/cstring" - textual header "/usr/include/c++/5.4.0/ctgmath" - textual header "/usr/include/c++/5.4.0/ctime" - textual header "/usr/include/c++/5.4.0/cwchar" - textual header "/usr/include/c++/5.4.0/cwctype" - textual header "/usr/include/c++/5.4.0/cxxabi.h" - textual header "/usr/include/c++/5.4.0/debug/array" - textual header "/usr/include/c++/5.4.0/debug/bitset" - textual header "/usr/include/c++/5.4.0/debug/debug.h" - textual header "/usr/include/c++/5.4.0/debug/deque" - textual header "/usr/include/c++/5.4.0/debug/formatter.h" - textual header "/usr/include/c++/5.4.0/debug/forward_list" - textual header "/usr/include/c++/5.4.0/debug/functions.h" - textual header "/usr/include/c++/5.4.0/debug/list" - textual header "/usr/include/c++/5.4.0/debug/macros.h" - textual header "/usr/include/c++/5.4.0/debug/map" - textual header "/usr/include/c++/5.4.0/debug/map.h" - textual header "/usr/include/c++/5.4.0/debug/multimap.h" - textual header "/usr/include/c++/5.4.0/debug/multiset.h" - textual header "/usr/include/c++/5.4.0/debug/safe_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.h" - textual header "/usr/include/c++/5.4.0/debug/safe_local_iterator.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.h" - textual header "/usr/include/c++/5.4.0/debug/safe_sequence.tcc" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_base.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.h" - textual header "/usr/include/c++/5.4.0/debug/safe_unordered_container.tcc" - textual header "/usr/include/c++/5.4.0/debug/set" - textual header "/usr/include/c++/5.4.0/debug/set.h" - textual header "/usr/include/c++/5.4.0/debug/string" - textual header "/usr/include/c++/5.4.0/debug/unordered_map" - textual header "/usr/include/c++/5.4.0/debug/unordered_set" - textual header "/usr/include/c++/5.4.0/debug/vector" - textual header "/usr/include/c++/5.4.0/decimal/decimal" - textual header "/usr/include/c++/5.4.0/decimal/decimal.h" - textual header "/usr/include/c++/5.4.0/deque" - textual header "/usr/include/c++/5.4.0/exception" - textual header "/usr/include/c++/5.4.0/experimental/algorithm" - textual header "/usr/include/c++/5.4.0/experimental/any" - textual header "/usr/include/c++/5.4.0/experimental/chrono" - textual header "/usr/include/c++/5.4.0/experimental/filesystem" - textual header "/usr/include/c++/5.4.0/experimental/fs_dir.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_fwd.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_ops.h" - textual header "/usr/include/c++/5.4.0/experimental/fs_path.h" - textual header "/usr/include/c++/5.4.0/experimental/functional" - textual header "/usr/include/c++/5.4.0/experimental/optional" - textual header "/usr/include/c++/5.4.0/experimental/ratio" - textual header "/usr/include/c++/5.4.0/experimental/string_view" - textual header "/usr/include/c++/5.4.0/experimental/string_view.tcc" - textual header "/usr/include/c++/5.4.0/experimental/system_error" - textual header "/usr/include/c++/5.4.0/experimental/tuple" - textual header "/usr/include/c++/5.4.0/experimental/type_traits" - textual header "/usr/include/c++/5.4.0/ext/algorithm" - textual header "/usr/include/c++/5.4.0/ext/aligned_buffer.h" - textual header "/usr/include/c++/5.4.0/ext/alloc_traits.h" - textual header "/usr/include/c++/5.4.0/ext/array_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/atomicity.h" - textual header "/usr/include/c++/5.4.0/ext/bitmap_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/cast.h" - textual header "/usr/include/c++/5.4.0/ext/cmath" - textual header "/usr/include/c++/5.4.0/ext/codecvt_specializations.h" - textual header "/usr/include/c++/5.4.0/ext/concurrence.h" - textual header "/usr/include/c++/5.4.0/ext/debug_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/enc_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/extptr_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/functional" - textual header "/usr/include/c++/5.4.0/ext/hash_map" - textual header "/usr/include/c++/5.4.0/ext/hash_set" - textual header "/usr/include/c++/5.4.0/ext/iterator" - textual header "/usr/include/c++/5.4.0/ext/malloc_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/memory" - textual header "/usr/include/c++/5.4.0/ext/mt_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/new_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/numeric" - textual header "/usr/include/c++/5.4.0/ext/numeric_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/assoc_container.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/bin_search_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/point_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/bin_search_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/binary_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_cmp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/entry_pred.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binary_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/binomial_heap_base_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/binomial_heap_base_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/branch_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/null_node_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/branch_policy/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cc_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cmp_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/cond_key_dtor_entry_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/entry_list_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/size_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cc_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/cond_dealtor.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/container_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/debug_map_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/eq_by_less.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/eq_fn/hash_eq_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/constructor_destructor_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/debug_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/erase_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/find_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/gp_ht_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/insert_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/iterator_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_no_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/resize_store_hash_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/gp_hash_table_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mask_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/direct_mod_range_hashing_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/linear_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mask_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/mod_based_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/probe_fn_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/quadratic_probe_fn_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_range_hashing.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_hash_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/hash_fn/sample_ranged_probe_fn.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/left_child_next_sibling_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/left_child_next_sibling_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/constructor_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/entry_metadata_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/lu_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_map_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/lu_counter_metadata.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/list_update_policy/sample_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/node_iterators.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/ov_tree_map_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/ov_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/pairing_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pairing_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/iterators_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/policy_access_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/r_erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/rotate_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/split_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/synth_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/pat_trie_/update_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/priority_queue_base_dispatch.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/rb_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rb_tree_map_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/rc_binomial_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/rc_binomial_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/cc_hash_max_collision_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_exponential_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_load_check_resize_trigger_size_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_prime_size_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/hash_standard_resize_policy_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_resize_trigger.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/resize_policy/sample_size_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/info_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/node.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/splay_tree_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/splay_tree_/traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/standard_policies.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/constructors_destructor_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/debug_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/erase_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/find_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/insert_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/split_join_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/thin_heap_.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/thin_heap_/trace_fn_imps.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_policy/sample_tree_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/tree_trace_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/node_metadata_selector.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/order_statistics_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/prefix_search_node_update_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_access_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/sample_trie_node_update.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_policy_base.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/trie_policy/trie_string_access_traits_imp.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/type_utils.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/types_traits.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_const_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/detail/unordered_iterator/point_iterator.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/exception.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/hash_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/list_update_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/priority_queue.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tag_and_trait.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/tree_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pb_ds/trie_policy.hpp" - textual header "/usr/include/c++/5.4.0/ext/pod_char_traits.h" - textual header "/usr/include/c++/5.4.0/ext/pointer.h" - textual header "/usr/include/c++/5.4.0/ext/pool_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/random" - textual header "/usr/include/c++/5.4.0/ext/random.tcc" - textual header "/usr/include/c++/5.4.0/ext/rb_tree" - textual header "/usr/include/c++/5.4.0/ext/rc_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/rope" - textual header "/usr/include/c++/5.4.0/ext/ropeimpl.h" - textual header "/usr/include/c++/5.4.0/ext/slist" - textual header "/usr/include/c++/5.4.0/ext/sso_string_base.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/stdio_sync_filebuf.h" - textual header "/usr/include/c++/5.4.0/ext/string_conversions.h" - textual header "/usr/include/c++/5.4.0/ext/throw_allocator.h" - textual header "/usr/include/c++/5.4.0/ext/type_traits.h" - textual header "/usr/include/c++/5.4.0/ext/typelist.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.h" - textual header "/usr/include/c++/5.4.0/ext/vstring.tcc" - textual header "/usr/include/c++/5.4.0/ext/vstring_fwd.h" - textual header "/usr/include/c++/5.4.0/ext/vstring_util.h" - textual header "/usr/include/c++/5.4.0/fenv.h" - textual header "/usr/include/c++/5.4.0/forward_list" - textual header "/usr/include/c++/5.4.0/fstream" - textual header "/usr/include/c++/5.4.0/functional" - textual header "/usr/include/c++/5.4.0/future" - textual header "/usr/include/c++/5.4.0/initializer_list" - textual header "/usr/include/c++/5.4.0/iomanip" - textual header "/usr/include/c++/5.4.0/ios" - textual header "/usr/include/c++/5.4.0/iosfwd" - textual header "/usr/include/c++/5.4.0/iostream" - textual header "/usr/include/c++/5.4.0/istream" - textual header "/usr/include/c++/5.4.0/iterator" - textual header "/usr/include/c++/5.4.0/limits" - textual header "/usr/include/c++/5.4.0/list" - textual header "/usr/include/c++/5.4.0/locale" - textual header "/usr/include/c++/5.4.0/map" - textual header "/usr/include/c++/5.4.0/memory" - textual header "/usr/include/c++/5.4.0/mutex" - textual header "/usr/include/c++/5.4.0/new" - textual header "/usr/include/c++/5.4.0/numeric" - textual header "/usr/include/c++/5.4.0/ostream" - textual header "/usr/include/c++/5.4.0/parallel/algo.h" - textual header "/usr/include/c++/5.4.0/parallel/algobase.h" - textual header "/usr/include/c++/5.4.0/parallel/algorithm" - textual header "/usr/include/c++/5.4.0/parallel/algorithmfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/balanced_quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/base.h" - textual header "/usr/include/c++/5.4.0/parallel/basic_iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/checkers.h" - textual header "/usr/include/c++/5.4.0/parallel/compatibility.h" - textual header "/usr/include/c++/5.4.0/parallel/compiletime_settings.h" - textual header "/usr/include/c++/5.4.0/parallel/equally_split.h" - textual header "/usr/include/c++/5.4.0/parallel/features.h" - textual header "/usr/include/c++/5.4.0/parallel/find.h" - textual header "/usr/include/c++/5.4.0/parallel/find_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each.h" - textual header "/usr/include/c++/5.4.0/parallel/for_each_selectors.h" - textual header "/usr/include/c++/5.4.0/parallel/iterator.h" - textual header "/usr/include/c++/5.4.0/parallel/list_partition.h" - textual header "/usr/include/c++/5.4.0/parallel/losertree.h" - textual header "/usr/include/c++/5.4.0/parallel/merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiseq_selection.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_merge.h" - textual header "/usr/include/c++/5.4.0/parallel/multiway_mergesort.h" - textual header "/usr/include/c++/5.4.0/parallel/numeric" - textual header "/usr/include/c++/5.4.0/parallel/numericfwd.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/omp_loop_static.h" - textual header "/usr/include/c++/5.4.0/parallel/par_loop.h" - textual header "/usr/include/c++/5.4.0/parallel/parallel.h" - textual header "/usr/include/c++/5.4.0/parallel/partial_sum.h" - textual header "/usr/include/c++/5.4.0/parallel/partition.h" - textual header "/usr/include/c++/5.4.0/parallel/queue.h" - textual header "/usr/include/c++/5.4.0/parallel/quicksort.h" - textual header "/usr/include/c++/5.4.0/parallel/random_number.h" - textual header "/usr/include/c++/5.4.0/parallel/random_shuffle.h" - textual header "/usr/include/c++/5.4.0/parallel/search.h" - textual header "/usr/include/c++/5.4.0/parallel/set_operations.h" - textual header "/usr/include/c++/5.4.0/parallel/settings.h" - textual header "/usr/include/c++/5.4.0/parallel/sort.h" - textual header "/usr/include/c++/5.4.0/parallel/tags.h" - textual header "/usr/include/c++/5.4.0/parallel/types.h" - textual header "/usr/include/c++/5.4.0/parallel/unique_copy.h" - textual header "/usr/include/c++/5.4.0/parallel/workstealing.h" - textual header "/usr/include/c++/5.4.0/profile/array" - textual header "/usr/include/c++/5.4.0/profile/base.h" - textual header "/usr/include/c++/5.4.0/profile/bitset" - textual header "/usr/include/c++/5.4.0/profile/deque" - textual header "/usr/include/c++/5.4.0/profile/forward_list" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_algos.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_container_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hash_func.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_hashtable_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_slist.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_list_to_vector.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_map_to_unordered_map.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_node.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_state.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_trace.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_size.h" - textual header "/usr/include/c++/5.4.0/profile/impl/profiler_vector_to_list.h" - textual header "/usr/include/c++/5.4.0/profile/iterator_tracker.h" - textual header "/usr/include/c++/5.4.0/profile/list" - textual header "/usr/include/c++/5.4.0/profile/map" - textual header "/usr/include/c++/5.4.0/profile/map.h" - textual header "/usr/include/c++/5.4.0/profile/multimap.h" - textual header "/usr/include/c++/5.4.0/profile/multiset.h" - textual header "/usr/include/c++/5.4.0/profile/ordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/set" - textual header "/usr/include/c++/5.4.0/profile/set.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_base.h" - textual header "/usr/include/c++/5.4.0/profile/unordered_map" - textual header "/usr/include/c++/5.4.0/profile/unordered_set" - textual header "/usr/include/c++/5.4.0/profile/vector" - textual header "/usr/include/c++/5.4.0/queue" - textual header "/usr/include/c++/5.4.0/random" - textual header "/usr/include/c++/5.4.0/ratio" - textual header "/usr/include/c++/5.4.0/regex" - textual header "/usr/include/c++/5.4.0/scoped_allocator" - textual header "/usr/include/c++/5.4.0/set" - textual header "/usr/include/c++/5.4.0/shared_mutex" - textual header "/usr/include/c++/5.4.0/sstream" - textual header "/usr/include/c++/5.4.0/stack" - textual header "/usr/include/c++/5.4.0/stdexcept" - textual header "/usr/include/c++/5.4.0/streambuf" - textual header "/usr/include/c++/5.4.0/string" - textual header "/usr/include/c++/5.4.0/sun/awt/CausedFocusEvent.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Service.h" - textual header "/usr/include/c++/5.4.0/sun/misc/ServiceConfigurationError.h" - textual header "/usr/include/c++/5.4.0/sun/misc/Unsafe.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/Reflection.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationInvocationHandler.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationParser.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/AnnotationType.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/EnumConstantNotPresentExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/annotation/ExceptionProxy.h" - textual header "/usr/include/c++/5.4.0/sun/reflect/misc/ReflectUtil.h" - textual header "/usr/include/c++/5.4.0/system_error" - textual header "/usr/include/c++/5.4.0/tgmath.h" - textual header "/usr/include/c++/5.4.0/thread" - textual header "/usr/include/c++/5.4.0/tr1/array" - textual header "/usr/include/c++/5.4.0/tr1/bessel_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/beta_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/ccomplex" - textual header "/usr/include/c++/5.4.0/tr1/cctype" - textual header "/usr/include/c++/5.4.0/tr1/cfenv" - textual header "/usr/include/c++/5.4.0/tr1/cfloat" - textual header "/usr/include/c++/5.4.0/tr1/cinttypes" - textual header "/usr/include/c++/5.4.0/tr1/climits" - textual header "/usr/include/c++/5.4.0/tr1/cmath" - textual header "/usr/include/c++/5.4.0/tr1/complex" - textual header "/usr/include/c++/5.4.0/tr1/complex.h" - textual header "/usr/include/c++/5.4.0/tr1/cstdarg" - textual header "/usr/include/c++/5.4.0/tr1/cstdbool" - textual header "/usr/include/c++/5.4.0/tr1/cstdint" - textual header "/usr/include/c++/5.4.0/tr1/cstdio" - textual header "/usr/include/c++/5.4.0/tr1/cstdlib" - textual header "/usr/include/c++/5.4.0/tr1/ctgmath" - textual header "/usr/include/c++/5.4.0/tr1/ctime" - textual header "/usr/include/c++/5.4.0/tr1/ctype.h" - textual header "/usr/include/c++/5.4.0/tr1/cwchar" - textual header "/usr/include/c++/5.4.0/tr1/cwctype" - textual header "/usr/include/c++/5.4.0/tr1/ell_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/exp_integral.tcc" - textual header "/usr/include/c++/5.4.0/tr1/fenv.h" - textual header "/usr/include/c++/5.4.0/tr1/float.h" - textual header "/usr/include/c++/5.4.0/tr1/functional" - textual header "/usr/include/c++/5.4.0/tr1/functional_hash.h" - textual header "/usr/include/c++/5.4.0/tr1/gamma.tcc" - textual header "/usr/include/c++/5.4.0/tr1/hashtable.h" - textual header "/usr/include/c++/5.4.0/tr1/hashtable_policy.h" - textual header "/usr/include/c++/5.4.0/tr1/hypergeometric.tcc" - textual header "/usr/include/c++/5.4.0/tr1/inttypes.h" - textual header "/usr/include/c++/5.4.0/tr1/legendre_function.tcc" - textual header "/usr/include/c++/5.4.0/tr1/limits.h" - textual header "/usr/include/c++/5.4.0/tr1/math.h" - textual header "/usr/include/c++/5.4.0/tr1/memory" - textual header "/usr/include/c++/5.4.0/tr1/modified_bessel_func.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_hermite.tcc" - textual header "/usr/include/c++/5.4.0/tr1/poly_laguerre.tcc" - textual header "/usr/include/c++/5.4.0/tr1/random" - textual header "/usr/include/c++/5.4.0/tr1/random.h" - textual header "/usr/include/c++/5.4.0/tr1/random.tcc" - textual header "/usr/include/c++/5.4.0/tr1/regex" - textual header "/usr/include/c++/5.4.0/tr1/riemann_zeta.tcc" - textual header "/usr/include/c++/5.4.0/tr1/shared_ptr.h" - textual header "/usr/include/c++/5.4.0/tr1/special_function_util.h" - textual header "/usr/include/c++/5.4.0/tr1/stdarg.h" - textual header "/usr/include/c++/5.4.0/tr1/stdbool.h" - textual header "/usr/include/c++/5.4.0/tr1/stdint.h" - textual header "/usr/include/c++/5.4.0/tr1/stdio.h" - textual header "/usr/include/c++/5.4.0/tr1/stdlib.h" - textual header "/usr/include/c++/5.4.0/tr1/tgmath.h" - textual header "/usr/include/c++/5.4.0/tr1/tuple" - textual header "/usr/include/c++/5.4.0/tr1/type_traits" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map" - textual header "/usr/include/c++/5.4.0/tr1/unordered_map.h" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set" - textual header "/usr/include/c++/5.4.0/tr1/unordered_set.h" - textual header "/usr/include/c++/5.4.0/tr1/utility" - textual header "/usr/include/c++/5.4.0/tr1/wchar.h" - textual header "/usr/include/c++/5.4.0/tr1/wctype.h" - textual header "/usr/include/c++/5.4.0/tr2/bool_set" - textual header "/usr/include/c++/5.4.0/tr2/bool_set.tcc" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset" - textual header "/usr/include/c++/5.4.0/tr2/dynamic_bitset.tcc" - textual header "/usr/include/c++/5.4.0/tr2/ratio" - textual header "/usr/include/c++/5.4.0/tr2/type_traits" - textual header "/usr/include/c++/5.4.0/tuple" - textual header "/usr/include/c++/5.4.0/type_traits" - textual header "/usr/include/c++/5.4.0/typeindex" - textual header "/usr/include/c++/5.4.0/typeinfo" - textual header "/usr/include/c++/5.4.0/unordered_map" - textual header "/usr/include/c++/5.4.0/unordered_set" - textual header "/usr/include/c++/5.4.0/utility" - textual header "/usr/include/c++/5.4.0/valarray" - textual header "/usr/include/c++/5.4.0/vector" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/atomic_word.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/basic_file.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++allocator.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++config.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++io.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/c++locale.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cpu_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_base.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/ctype_inline.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/cxxabi_tweaks.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/error_constants.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/extc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-default.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-posix.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr-single.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/gthr.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/messages_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/opt_random.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/os_defines.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdc++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/stdtr1c++.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/bits/time_members.h" - textual header "/usr/include/x86_64-linux-gnu/c++/5.4.0/ext/opt_random.h" - textual header "/usr/include/c++/5.4.0/backward/auto_ptr.h" - textual header "/usr/include/c++/5.4.0/backward/backward_warning.h" - textual header "/usr/include/c++/5.4.0/backward/binders.h" - textual header "/usr/include/c++/5.4.0/backward/hash_fun.h" - textual header "/usr/include/c++/5.4.0/backward/hash_map" - textual header "/usr/include/c++/5.4.0/backward/hash_set" - textual header "/usr/include/c++/5.4.0/backward/hashtable.h" - textual header "/usr/include/c++/5.4.0/backward/strstream" -} \ No newline at end of file diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/config/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/config/BUILD deleted file mode 100644 index 6bfc38b95..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/java/BUILD b/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/11.0.0/bazel_4.0.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/BUILD deleted file mode 100755 index b9ad527ea..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/BUILD +++ /dev/null @@ -1,113 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # This toolchain will only work with the local autoconfigured platforms. - "@bazel_tools//platforms:autoconfigured", - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/CROSSTOOL b/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/CROSSTOOL deleted file mode 100755 index d2112abb8..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - tool_path {name: "dwp" path: "/usr/bin/dwp" } - tool_path {name: "gcov" path: "/dev/null" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/config/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/config/BUILD deleted file mode 100644 index 3eb453636..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - """, -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/java/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.20.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/BUILD deleted file mode 100755 index 2f8b6af09..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":compiler_deps", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - dynamic_runtime_libs = [":empty"], - linker_files = ":empty", - objcopy_files = ":empty", - static_runtime_libs = [":empty"], - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/CROSSTOOL b/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/CROSSTOOL deleted file mode 100755 index d2112abb8..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - tool_path {name: "dwp" path: "/usr/bin/dwp" } - tool_path {name: "gcov" path: "/dev/null" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - expand_if_all_available: 'fdo_profile_path' - flag_group { - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # 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++-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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - expand_if_all_available: 'user_link_flags' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - iterate_over: 'user_link_flags' - flag: '%{user_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' - action: "c++-link-nodeps-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-nodeps-dynamic-library" - action: 'c++-link-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - 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++-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++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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++-module-compile' - action: 'c++-module-codegen' - flag_group { - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - expand_if_all_available: 'def_file_path' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-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 } -} diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/config/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/config/BUILD deleted file mode 100644 index 76c78fc5d..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - """, -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/java/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.21.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/BUILD deleted file mode 100755 index 4bb10b123..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/CROSSTOOL b/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/CROSSTOOL deleted file mode 100755 index 5edafb5ef..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/8.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - tool_path {name: "dwp" path: "/usr/bin/dwp" } - tool_path {name: "gcov" path: "/dev/null" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - expand_if_all_available: 'fdo_profile_path' - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are - # not used in this crosstool - feature { - name: 'legacy_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'legacy_compile_flags' - 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'linkstamp_paths' - iterate_over: 'linkstamp_paths' - flag: '%{linkstamp_paths}' - } - } - } - - feature { - name: 'output_execpath_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'archiver_flags' - flag_set { - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'input_param_flags' - flag_set { - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'interface_library_output_path' - flag: "/IMPLIB:%{interface_library_output_path}" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'libopts' - iterate_over: 'libopts' - flag: '%{libopts}' - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'libraries_to_link' - 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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'user_link_flags' - iterate_over: 'user_link_flags' - flag: '%{user_link_flags}' - } - } - } - feature { - name: 'legacy_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'legacy_link_flags' - iterate_over: 'legacy_link_flags' - flag: '%{legacy_link_flags}' - } - } - } - - feature { - name: 'linker_param_file' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'linker_param_file' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'user_compile_flags' - iterate_over: 'user_compile_flags' - flag: '%{user_compile_flags}' - } - } - } - - feature { - name: 'sysroot' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'sysroot' - iterate_over: 'sysroot' - flag: '--sysroot=%{sysroot}' - } - } - } - - feature { - name: 'unfiltered_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'unfiltered_compile_flags' - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'def_file_path' - 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 } -} diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/config/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/config/BUILD deleted file mode 100644 index 032320ec8..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - """, -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/java/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.22.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/BUILD deleted file mode 100755 index 8bc7a86c2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index d99477848..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1731 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/8.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/8.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/config/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/config/BUILD deleted file mode 100644 index 66c87c062..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - """, -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/java/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/BUILD deleted file mode 100755 index 8bc7a86c2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index d99477848..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1731 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/8.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/8.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/config/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/config/BUILD deleted file mode 100644 index 774657304..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" - } - """, -) diff --git a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/java/BUILD b/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/8.0.0/bazel_0.23.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/BUILD deleted file mode 100755 index 4bb10b123..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/BUILD +++ /dev/null @@ -1,111 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -cc_library( - name = "stl", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - cpu = "k8", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "linux_gnu_x86", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - cpu = "local", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_identifier = "stub_armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/CROSSTOOL b/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/CROSSTOOL deleted file mode 100755 index b7ae442c2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/CROSSTOOL +++ /dev/null @@ -1,1209 +0,0 @@ -# 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: "" - -# 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: "linux_gnu_x86" - abi_version: "clang" - abi_libc_version: "glibc_2.19" - builtin_sysroot: "" - compiler: "clang" - host_system_name: "i686-unknown-linux-gnu" - needsPic: true - supports_gold_linker: true - supports_incremental_linker: false - supports_fission: false - supports_interface_shared_objects: false - supports_normalizing_ar: false - supports_start_end_lib: true - target_libc: "glibc_2.19" - target_cpu: "k8" - target_system_name: "x86_64-unknown-linux-gnu" - cxx_flag: "-std=c++0x" - linker_flag: "-fuse-ld=gold" - linker_flag: "-Wl,-no-as-needed" - linker_flag: "-Wl,-z,relro,-z,now" - linker_flag: "-B/usr/local/bin" - linker_flag: "-lstdc++" - linker_flag: "-lm" - cxx_builtin_include_directory: "/usr/local/include" - cxx_builtin_include_directory: "/usr/local/lib/clang/9.0.0/include" - cxx_builtin_include_directory: "/usr/include/x86_64-linux-gnu" - cxx_builtin_include_directory: "/usr/include" - 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" - objcopy_embed_flag: "-I" - objcopy_embed_flag: "binary" - 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\"" - compiler_flag: "-U_FORTIFY_SOURCE" - compiler_flag: "-fstack-protector" - compiler_flag: "-Wall" - compiler_flag: "-Wthread-safety" - compiler_flag: "-Wself-assign" - compiler_flag: "-fcolor-diagnostics" - compiler_flag: "-fno-omit-frame-pointer" - tool_path {name: "ar" path: "/usr/bin/ar" } - tool_path {name: "ld" path: "/usr/bin/ld" } - tool_path {name: "cpp" path: "/usr/bin/cpp" } - tool_path {name: "gcc" path: "/usr/local/bin/clang" } - tool_path {name: "dwp" path: "/usr/bin/dwp" } - tool_path {name: "gcov" path: "/dev/null" } - 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" } - - 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 } - - - feature { - name: 'coverage' - provides: 'profile' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - flag_group { - flag: '--coverage' - } - } - flag_set { - action: 'c++-link-dynamic-library' - action: 'c++-link-nodeps-dynamic-library' - action: 'c++-link-executable' - flag_group { - flag: '--coverage' - } - } - } - - - feature { - name: 'fdo_optimize' - provides: 'profile' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - expand_if_all_available: 'fdo_profile_path' - flag: '-fprofile-use=%{fdo_profile_path}' - flag: '-fprofile-correction', - } - } - } -} - -toolchain { - toolchain_identifier: "msys_x64_mingw" - abi_version: "local" - abi_libc_version: "local" - builtin_sysroot: "" - compiler: "mingw-gcc" - host_system_name: "local" - needsPic: false - target_libc: "mingw" - target_cpu: "x64_windows" - target_system_name: "local" - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - - - linking_mode_flags { mode: DYNAMIC } -} - -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: "msvc-cl" - target_libc: "msvcrt" - 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=0x0601" - # Turn off warning messages. - compiler_flag: "/D_CRT_SECURE_NO_DEPRECATE" - compiler_flag: "/D_CRT_SECURE_NO_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" - # Catch C++ exceptions only and tell the compiler to assume that functions declared - # as extern "C" never throw a C++ exception. - 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" - } - - artifact_name_pattern { - category_name: 'object_file' - prefix: '' - extension: '.obj' - } - - artifact_name_pattern { - category_name: 'static_library' - prefix: '' - extension: '.lib' - } - - artifact_name_pattern { - category_name: 'alwayslink_static_library' - prefix: '' - extension: '.lo.lib' - } - - artifact_name_pattern { - category_name: 'executable' - prefix: '' - extension: '.exe' - } - - artifact_name_pattern { - category_name: 'dynamic_library' - prefix: '' - extension: '.dll' - } - - artifact_name_pattern { - category_name: 'interface_library' - prefix: '' - extension: '.if.lib' - } - - # 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - flag_group { - flag: "/nologo" - } - } - } - - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'preprocess-assemble' - action_name: 'preprocess-assemble' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - implies: 'nologo' - implies: 'msvc_env' - implies: 'sysroot' - } - - action_config { - config_name: 'c-compile' - action_name: 'c-compile' - tool { - tool_path: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: '' - } - implies: 'compiler_input_flags' - implies: 'compiler_output_flags' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - implies: 'no_stripping' - implies: 'has_configured_linker_path' - implies: 'def_file' - } - - action_config { - config_name: 'c++-link-nodeps-dynamic-library' - action_name: 'c++-link-nodeps-dynamic-library' - tool { - tool_path: '' - } - implies: 'nologo' - implies: 'shared_flag' - implies: 'linkstamps' - implies: 'output_execpath_flags' - implies: 'input_param_flags' - implies: 'user_link_flags' - implies: 'legacy_link_flags' - implies: 'linker_subsystem_flag' - implies: 'linker_param_file' - implies: 'msvc_env' - 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' - } - - # TODO(b/65151735): Remove legacy_compile_flags feature when legacy fields are - # not used in this crosstool - feature { - name: 'legacy_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'legacy_compile_flags' - 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: "assemble" - action: "preprocess-assemble" - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "PATH" - value: "" - } - env_entry { - key: "TMP" - value: "" - } - env_entry { - key: "TEMP" - value: "" - } - } - implies: 'msvc_compile_env' - implies: 'msvc_link_env' - } - - feature { - name: "msvc_compile_env" - env_set { - action: "c-compile" - action: "c++-compile" - action: "c++-module-compile" - action: "c++-module-codegen" - action: "c++-header-parsing" - action: "assemble" - action: "preprocess-assemble" - env_entry { - key: "INCLUDE" - value: "" - } - } - } - - feature { - name: "msvc_link_env" - env_set { - action: "c++-link-executable" - action: "c++-link-dynamic-library" - action: "c++-link-nodeps-dynamic-library" - action: "c++-link-static-library" - env_entry { - key: "LIB" - value: "" - } - } - } - - feature { - name: 'include_paths' - flag_set { - action: "assemble" - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - 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++-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-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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/DLL' - } - } - } - - feature { - name: 'linkstamps' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'linkstamp_paths' - iterate_over: 'linkstamp_paths' - flag: '%{linkstamp_paths}' - } - } - } - - feature { - name: 'output_execpath_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'archiver_flags' - flag_set { - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'output_execpath' - flag: '/OUT:%{output_execpath}' - } - } - } - - feature { - name: 'input_param_flags' - flag_set { - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'interface_library_output_path' - flag: "/IMPLIB:%{interface_library_output_path}" - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'libopts' - iterate_over: 'libopts' - flag: '%{libopts}' - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'libraries_to_link' - 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 { - flag: '%{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}' - } - } - } - } - } - - # Since this feature is declared earlier in the CROSSTOOL than - # "user_link_flags", this feature will be applied prior to it anwyhere they - # are both implied. And since "user_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' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: '/SUBSYSTEM:CONSOLE' - } - } - } - - # The "user_link_flags" contains 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 "user_link_flags". - feature { - name: 'user_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'user_link_flags' - iterate_over: 'user_link_flags' - flag: '%{user_link_flags}' - } - } - } - feature { - name: 'legacy_link_flags' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'legacy_link_flags' - iterate_over: 'legacy_link_flags' - flag: '%{legacy_link_flags}' - } - } - } - - feature { - name: 'linker_param_file' - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - action: 'c++-link-static-library' - flag_group { - expand_if_all_available: 'linker_param_file' - 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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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' - action: "c++-link-nodeps-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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - 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_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - flag: "" - flag: "/INCREMENTAL:NO" - } - } - implies: 'generate_pdb_file' - } - - feature { - name: 'opt' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/O2" # Implies /Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy - } - } - implies: 'frame_pointer' - } - - # Keep stack frames for debugging, even in opt mode. - # Must come after /O1, /O2 and /Ox. - feature { - name: "frame_pointer" - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - flag: "/Oy-" - } - } - } - - # Remove assert/DCHECKs in opt mode. - # You can have them back with --features=-disable_assertions. - feature { - name: 'disable_assertions' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/DNDEBUG" - } - } - } - - feature { - name: "determinism" - enabled: true - flag_set { - action: "c-compile" - action: "c++-compile" - flag_group { - # Make C++ compilation deterministic. Use linkstamping instead of these - # compiler symbols. - # TODO: detect clang on Windows and use "-Wno-builtin-macro-redefined" - flag: "/wd4117" # Trying to define or undefine a predefined macro - flag: "-D__DATE__=\"redacted\"" - flag: "-D__TIMESTAMP__=\"redacted\"" - flag: "-D__TIME__=\"redacted\"" - } - } - } - - feature { - name: 'treat_warnings_as_errors' - flag_set { - action: 'c-compile' - action: 'c++-compile' - flag_group { - flag: "/WX" - } - } - } - - # Trade slower build time for smaller binary - feature { - name: 'smaller_binary' - enabled: true - flag_set { - action: 'c-compile' - action: 'c++-compile' - with_feature: { - feature: 'opt' - } - flag_group { - flag: "/Gy" # Enable function-level linking (-ffunction-sections) - flag: "/Gw" # Optimize global data (-fdata-sections) - } - } - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library', - action: 'c++-link-nodeps-dynamic-library' - with_feature: { - feature: 'opt' - } - flag_group { - flag: '/OPT:ICF' # Fold identical functions - flag: '/OPT:REF' # Eliminate unreferenced functions and data - } - } - } - - # Suppress warnings that most users do not care - feature { - name: 'ignore_noisy_warnings' - enabled: true - flag_set { - action: 'c++-link-static-library' - flag_group { - # Suppress 'object file does not define any public symbols' warning - flag: '/ignore:4221' - } - } - } - - feature { - name: 'user_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'user_compile_flags' - iterate_over: 'user_compile_flags' - flag: '%{user_compile_flags}' - } - } - } - - feature { - name: 'sysroot' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'sysroot' - iterate_over: 'sysroot' - flag: '--sysroot=%{sysroot}' - } - } - } - - feature { - name: 'unfiltered_compile_flags' - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'unfiltered_compile_flags' - iterate_over: 'unfiltered_compile_flags' - flag: '%{unfiltered_compile_flags}' - } - } - } - - feature { - name: 'compiler_output_flags' - flag_set { - action: 'assemble' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - flag: '/Zi' - } - } - flag_set { - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'output_file' - expand_if_none_available: 'output_assembly_file' - expand_if_none_available: 'output_preprocess_file' - flag: '/Fo%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_assembly_file' - flag: '/Fa%{output_file}' - } - flag_group { - expand_if_all_available: 'output_file' - expand_if_all_available: 'output_preprocess_file' - flag: '/P' - flag: '/Fi%{output_file}' - } - } - } - - feature { - name: 'compiler_input_flags' - flag_set { - action: 'assemble' - action: 'preprocess-assemble' - action: 'c-compile' - action: 'c++-compile' - action: 'c++-header-parsing' - action: 'c++-module-compile' - action: 'c++-module-codegen' - flag_group { - expand_if_all_available: 'source_file' - flag: '/c' - flag: '%{source_file}' - } - } - } - - feature { - name : 'def_file', - flag_set { - action: 'c++-link-executable' - action: 'c++-link-dynamic-library' - action: "c++-link-nodeps-dynamic-library" - flag_group { - expand_if_all_available: 'def_file_path' - 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 } -} diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/config/BUILD deleted file mode 100644 index a79684b35..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.22.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/BUILD deleted file mode 100755 index 912cb742f..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":local", - toolchain_identifier = "local", -) - -cc_toolchain_config( - name = "local", - compiler = "compiler", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 9721622fd..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1731 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = "local", - host_system_name = "local", - target_system_name = "local", - target_cpu = "k8", - target_libc = "local", - compiler = "compiler", - abi_version = "local", - abi_libc_version = "local", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/config/BUILD deleted file mode 100644 index ea1d71554..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/BUILD deleted file mode 100755 index 8bc7a86c2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index e1a1858e4..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1731 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/config/BUILD deleted file mode 100644 index e730ce389..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/BUILD deleted file mode 100755 index 8bc7a86c2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/BUILD +++ /dev/null @@ -1,126 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -# Target that can provide the CC_FLAGS variable based on the current -# cc_toolchain. -load("@bazel_tools//tools/cpp:cc_flags_supplier.bzl", "cc_flags_supplier") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -cc_flags_supplier(name = "cc_flags") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/cc_toolchain_config.bzl deleted file mode 100755 index e1a1858e4..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1731 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/config/BUILD deleted file mode 100644 index b7b0edf1d..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:69c9f1652941d64a46f6f7358a44c1718f25caa5cb1ced4a58ccc5281cd183b5" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.23.2/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/BUILD deleted file mode 100755 index e3603f6a8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 8a1720c4d..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1733 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/config/BUILD deleted file mode 100644 index 2a4077fff..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:bc6a2ad47b24d01a73da315dd288a560037c51a95cc77abb837b26fef1408798" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/BUILD deleted file mode 100755 index e3603f6a8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 8a1720c4d..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1733 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/config/BUILD deleted file mode 100644 index 162bf780d..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:677c1317f14c6fd5eba2fd8ec645bfdc5119f64b3e5e944e13c89e0525cc8ad1" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.24.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/BUILD deleted file mode 100755 index e3603f6a8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 903ca1d18..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1746 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/config/BUILD deleted file mode 100644 index 31d9d8ecc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:677c1317f14c6fd5eba2fd8ec645bfdc5119f64b3e5e944e13c89e0525cc8ad1" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/BUILD deleted file mode 100755 index e3603f6a8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 903ca1d18..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1746 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/config/BUILD deleted file mode 100644 index fad56d3cf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/BUILD deleted file mode 100755 index e3603f6a8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/cc_toolchain_config.bzl deleted file mode 100755 index 903ca1d18..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1746 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/dummy_toolchain.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/config/BUILD deleted file mode 100644 index f1f1d1542..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.25.2/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/BUILD deleted file mode 100755 index 5a615520a..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/BUILD +++ /dev/null @@ -1,116 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@local_config_platform//:constraints.bzl", "HOST_CONSTRAINTS") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = HOST_CONSTRAINTS, - target_compatible_with = HOST_CONSTRAINTS, - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = HOST_CONSTRAINTS, - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 81b04d32f..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1739 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/config/BUILD deleted file mode 100644 index 54f2e3fd8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/BUILD deleted file mode 100755 index 5a615520a..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/BUILD +++ /dev/null @@ -1,116 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@local_config_platform//:constraints.bzl", "HOST_CONSTRAINTS") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - compiler = "clang", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = HOST_CONSTRAINTS, - target_compatible_with = HOST_CONSTRAINTS, - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = HOST_CONSTRAINTS, - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 81b04d32f..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1739 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - flag_group( - flags = ["/MACHINE:X64"], - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_param_file_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - compiler_param_file_feature = feature( - name = "compiler_param_file", - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - compiler_param_file_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - 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 = "glibc_2.19", - compiler = "clang", - abi_version = "clang", - abi_libc_version = "glibc_2.19", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "compiler": attr.string(), - "cpu": attr.string(mandatory = True), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/config/BUILD deleted file mode 100644 index 91e462aa7..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.26.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/BUILD deleted file mode 100755 index cc6c7d811..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/BUILD +++ /dev/null @@ -1,161 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 3067205e0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1201 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_executable], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/config/BUILD deleted file mode 100644 index 388b29ba8..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/BUILD deleted file mode 100755 index cc6c7d811..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/BUILD +++ /dev/null @@ -1,161 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 3067205e0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1201 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_executable], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/config/BUILD deleted file mode 100644 index fa8115a80..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.27.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/BUILD deleted file mode 100755 index 09c3acb5d..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/BUILD +++ /dev/null @@ -1,162 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index dcb8338e7..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1202 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_executable], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/config/BUILD deleted file mode 100644 index d2d4239fb..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:d7bea5c70932edfddafda2da51814a17712585df319bbc11b4d17f662aec6c46" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/BUILD deleted file mode 100755 index 09c3acb5d..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/BUILD +++ /dev/null @@ -1,162 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index dcb8338e7..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1202 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_executable], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/config/BUILD deleted file mode 100644 index 696049786..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:2c925275fb30478602cd53651eeaaf015f964ad1b84d3947ed710802f054035b" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.28.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/BUILD deleted file mode 100755 index 0f802583c..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index 83047a2e1..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1133 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/config/BUILD deleted file mode 100644 index 301d6ed85..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:3e98e2e1233de1aed4ed7d7e05450a3f75b8c8d6f6bf53f1b390b5131c790f6f" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/BUILD deleted file mode 100755 index 7d537c38b..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "k8": ":cc-compiler-k8", - "k8|clang": ":cc-compiler-k8", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "cpp": "/usr/bin/cpp", - "dwp": "/usr/bin/dwp", - "gcc": "/usr/local/bin/clang", - "gcov": "/dev/null", - "ld": "/usr/bin/ld", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/builtin_include_directory_paths deleted file mode 100755 index a951533b1..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/9.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/4.9 -/usr/include/x86_64-linux-gnu/c++/4.9 -/usr/include/c++/4.9/backward diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 83047a2e1..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1133 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "abi_libc_version": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "compile_flags": attr.string_list(), - "compiler": attr.string(mandatory = True), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "cpu": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "cxx_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "host_system_name": attr.string(mandatory = True), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "opt_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - "target_libc": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "tool_paths": attr.string_dict(), - "toolchain_identifier": attr.string(mandatory = True), - "unfiltered_compile_flags": attr.string_list(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/config/BUILD deleted file mode 100644 index f00779e6e..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:2b73cbf679cbf11ed1f782511d3eb8ec7d69049b5947f503c190e9352fd27289" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_0.29.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/BUILD deleted file mode 100755 index df0f0ba84..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/BUILD +++ /dev/null @@ -1,163 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") -load(":armeabi_cc_toolchain_config.bzl", "armeabi_cc_toolchain_config") -load("@rules_cc//cc:defs.bzl", "cc_toolchain", "cc_toolchain_suite") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob( - ["extra_tools/**"], - allow_empty = True, - ) + [":builtin_include_directory_paths"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|clang": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":compiler_deps", - as_files = ":compiler_deps", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":linux_gnu_x86", - toolchain_identifier = "linux_gnu_x86", -) - -cc_toolchain_config( - name = "linux_gnu_x86", - abi_libc_version = "glibc_2.19", - abi_version = "clang", - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ], - compiler = "clang", - coverage_compile_flags = ["--coverage"], - coverage_link_flags = ["--coverage"], - cpu = "k8", - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ], - cxx_flags = ["-std=c++0x"], - dbg_compile_flags = ["-g"], - host_system_name = "i686-unknown-linux-gnu", - link_flags = [ - "-fuse-ld=/usr/bin/ld.gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ], - link_libs = [], - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ], - opt_link_flags = ["-Wl,--gc-sections"], - supports_start_end_lib = True, - target_libc = "glibc_2.19", - target_system_name = "x86_64-unknown-linux-gnu", - tool_paths = { - "ar": "/usr/bin/ar", - "ld": "/usr/bin/ld", - "cpp": "/usr/bin/cpp", - "gcc": "/usr/local/bin/clang", - "dwp": "/usr/bin/dwp", - "gcov": "/dev/null", - "nm": "/usr/bin/nm", - "objcopy": "/usr/bin/objcopy", - "objdump": "/usr/bin/objdump", - "strip": "/usr/bin/strip", - }, - toolchain_identifier = "linux_gnu_x86", - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -armeabi_cc_toolchain_config(name = "stub_armeabi-v7a") diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/armeabi_cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/armeabi_cc_toolchain_config.bzl deleted file mode 100755 index 94e0720bf..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/armeabi_cc_toolchain_config.bzl +++ /dev/null @@ -1,82 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "tool_path", -) - -def _impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -armeabi_cc_toolchain_config = rule( - implementation = _impl, - attrs = {}, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/builtin_include_directory_paths b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/builtin_include_directory_paths deleted file mode 100755 index a951533b1..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/builtin_include_directory_paths +++ /dev/null @@ -1,13 +0,0 @@ -This file is generated by cc_configure and contains builtin include directories -that /usr/local/bin/clang reported. This file is a dependency of every compilation action and -changes to it will be reflected in the action cache key. When some of these -paths change, Bazel will make sure to rerun the action, even though none of -declared action inputs or the action commandline changes. - -/usr/local/include -/usr/local/lib/clang/9.0.0/include -/usr/include/x86_64-linux-gnu -/usr/include -/usr/include/c++/4.9 -/usr/include/x86_64-linux-gnu/c++/4.9 -/usr/include/c++/4.9/backward diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/cc_toolchain_config.bzl b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/cc_toolchain_config.bzl deleted file mode 100755 index c5fd79eae..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1197 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -lto_index_actions = [ - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, -] - -def _impl(ctx): - tool_paths = [ - tool_path(name = name, path = path) - for name, path in ctx.attr.tool_paths.items() - ] - action_configs = [] - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.compile_flags, - ), - ] if ctx.attr.compile_flags else []), - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.dbg_compile_flags, - ), - ] if ctx.attr.dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_compile_flags, - ), - ] if ctx.attr.opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_cpp_compile_actions + [ACTION_NAMES.lto_backend], - flag_groups = ([ - flag_group( - flags = ctx.attr.cxx_flags, - ), - ] if ctx.attr.cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.link_flags, - ), - ] if ctx.attr.link_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.opt_link_flags, - ), - ] if ctx.attr.opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_compile_actions, - flag_groups = ([ - flag_group( - flags = ctx.attr.unfiltered_compile_flags, - ), - ] if ctx.attr.unfiltered_compile_flags else []), - ), - ], - ) - - library_search_directories_feature = feature( - name = "library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-L%{library_search_directories}"], - iterate_over = "library_search_directories", - expand_if_available = "library_search_directories", - ), - ], - ), - ], - ) - - static_libgcc_feature = feature( - name = "static_libgcc", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.lto_index_for_executable, - ACTION_NAMES.lto_index_for_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-static-libgcc"])], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - ], - ) - - pic_feature = feature( - name = "pic", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["-fPIC"], expand_if_available = "pic"), - ], - ), - ], - ) - - per_object_debug_info_feature = feature( - name = "per_object_debug_info", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["-gsplit-dwarf"], - expand_if_available = "per_object_debug_info_file", - ), - ], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - cs_fdo_optimize_feature = feature( - name = "cs_fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-Xclang-only=-Wno-profile-instr-unprofiled", - "-Xclang-only=-Wno-profile-instr-out-of-date", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - autofdo_feature = feature( - name = "autofdo", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fauto-profile=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - runtime_library_search_directories_feature = feature( - name = "runtime_library_search_directories", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$EXEC_ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_true = "is_cc_test", - ), - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - expand_if_false = "is_cc_test", - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set(features = ["static_link_cpp_runtimes"]), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "runtime_library_search_directories", - flag_groups = [ - flag_group( - flags = [ - "-Wl,-rpath,$ORIGIN/%{runtime_library_search_directories}", - ], - ), - ], - expand_if_available = - "runtime_library_search_directories", - ), - ], - with_features = [ - with_feature_set( - not_features = ["static_link_cpp_runtimes"], - ), - ], - ), - ], - ) - - fission_support_feature = feature( - name = "fission_support", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,--gdb-index"], - expand_if_available = "is_using_fission", - ), - ], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["-shared"])], - ), - ], - ) - - random_seed_feature = feature( - name = "random_seed", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["-frandom-seed=%{output_file}"], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - includes_feature = feature( - name = "includes", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-include", "%{includes}"], - iterate_over = "includes", - expand_if_available = "includes", - ), - ], - ), - ], - ) - - fdo_instrument_feature = feature( - name = "fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fprofile-generate=%{fdo_instrument_path}", - "-fno-data-sections", - ], - expand_if_available = "fdo_instrument_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - cs_fdo_instrument_feature = feature( - name = "cs_fdo_instrument", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-fcs-profile-generate=%{cs_fdo_instrument_path}", - ], - expand_if_available = "cs_fdo_instrument_path", - ), - ], - ), - ], - provides = ["csprofile"], - ) - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = ["-iquote", "%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["-I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["-isystem", "%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - symbol_counts_feature = feature( - name = "symbol_counts", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = [ - "-Wl,--print-symbol-counts=%{symbol_counts_output}", - ], - expand_if_available = "symbol_counts_output", - ), - ], - ), - ], - ) - - llvm_coverage_map_format_feature = feature( - name = "llvm_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-instr-generate", - "-fcoverage-mapping", - ], - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions + [ - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group(flags = ["-fprofile-instr-generate"]), - ], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - strip_debug_symbols_feature = feature( - name = "strip_debug_symbols", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-Wl,-S"], - expand_if_available = "strip_debug_symbols", - ), - ], - ), - ], - ) - - build_interface_libraries_feature = feature( - name = "build_interface_libraries", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [ - "%{generate_interface_library}", - "%{interface_library_builder_path}", - "%{interface_library_input_path}", - "%{interface_library_output_path}", - ], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - libraries_to_link_feature = feature( - name = "libraries_to_link", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["-Wl,--start-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["-Wl,-whole-archive"], - expand_if_true = - "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - flag_group( - flags = ["-l%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "dynamic_library", - ), - ), - flag_group( - flags = ["-l:%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "versioned_dynamic_library", - ), - ), - flag_group( - flags = ["-Wl,-no-whole-archive"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["-Wl,--end-lib"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - flag_group( - flags = ["-Wl,@%{thinlto_param_file}"], - expand_if_true = "thinlto_param_file", - ), - ], - ), - ], - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ] + ([flag_group(flags = ctx.attr.link_libs)] if ctx.attr.link_libs else []), - ), - ], - ) - - fdo_prefetch_hints_feature = feature( - name = "fdo_prefetch_hints", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.lto_backend, - ], - flag_groups = [ - flag_group( - flags = [ - "-Xclang-only=-mllvm", - "-Xclang-only=-prefetch-hints-file=%{fdo_prefetch_hints_path}", - ], - expand_if_available = "fdo_prefetch_hints_path", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - gcc_coverage_map_format_feature = feature( - name = "gcc_coverage_map_format", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - "objc-executable", - "objc++-executable", - ], - flag_groups = [ - flag_group( - flags = ["-fprofile-arcs", "-ftest-coverage"], - expand_if_available = "gcov_gcno_file", - ), - ], - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [flag_group(flags = ["--coverage"])], - ), - ], - requires = [feature_set(features = ["coverage"])], - provides = ["profile"], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group(flags = ["rcsD"]), - flag_group( - flags = ["%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flags = ["%{libraries_to_link.object_files}"], - iterate_over = "libraries_to_link.object_files", - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - force_pic_flags_feature = feature( - name = "force_pic_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.lto_index_for_executable, - ], - flag_groups = [ - flag_group( - flags = ["-pie"], - expand_if_available = "force_pic", - ), - ], - ), - ], - ) - - dependency_file_feature = feature( - name = "dependency_file", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.objc_compile, - ACTION_NAMES.objcpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["-MD", "-MF", "%{dependency_file}"], - expand_if_available = "dependency_file", - ), - ], - ), - ], - ) - - dynamic_library_linker_tool_path = tool_paths - dynamic_library_linker_tool_feature = feature( - name = "dynamic_library_linker_tool", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.lto_index_for_dynamic_library, - ACTION_NAMES.lto_index_for_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = [" + cppLinkDynamicLibraryToolPath + "], - expand_if_available = "generate_interface_library", - ), - ], - with_features = [ - with_feature_set( - features = ["supports_interface_shared_libraries"], - ), - ], - ), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = [ - flag_group( - flags = ["-o", "%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - # Note that we also set --coverage for c++-link-nodeps-dynamic-library. The - # generated code contains references to gcov symbols, and the dynamic linker - # can't resolve them unless the library is linked against gcov. - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_compile_flags), - ] if ctx.attr.coverage_compile_flags else []), - ), - flag_set( - actions = all_link_actions + lto_index_actions, - flag_groups = ([ - flag_group(flags = ctx.attr.coverage_link_flags), - ] if ctx.attr.coverage_link_flags else []), - ), - ], - ) - - thinlto_feature = feature( - name = "thin_lto", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ] + all_link_actions + lto_index_actions, - flag_groups = [ - flag_group(flags = ["-flto=thin"]), - flag_group( - expand_if_available = "lto_indexing_bitcode_file", - flags = [ - "-Xclang", - "-fthin-link-bitcode=%{lto_indexing_bitcode_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.linkstamp_compile], - flag_groups = [flag_group(flags = ["-DBUILD_LTO_TYPE=thin"])], - ), - flag_set( - actions = lto_index_actions, - flag_groups = [ - flag_group(flags = [ - "-flto=thin", - "-Wl,-plugin-opt,thinlto-index-only%{thinlto_optional_params_file}", - "-Wl,-plugin-opt,thinlto-emit-imports-files", - "-Wl,-plugin-opt,thinlto-prefix-replace=%{thinlto_prefix_replace}", - ]), - flag_group( - expand_if_available = "thinlto_object_suffix_replace", - flags = [ - "-Wl,-plugin-opt,thinlto-object-suffix-replace=%{thinlto_object_suffix_replace}", - ], - ), - flag_group( - expand_if_available = "thinlto_merged_object_file", - flags = [ - "-Wl,-plugin-opt,obj-path=%{thinlto_merged_object_file}", - ], - ), - ], - ), - flag_set( - actions = [ACTION_NAMES.lto_backend], - flag_groups = [ - flag_group(flags = [ - "-c", - "-fthinlto-index=%{thinlto_index}", - "-o", - "%{thinlto_output_object_file}", - "-x", - "ir", - "%{thinlto_input_bitcode_file}", - ]), - ], - ), - ], - ) - - is_linux = ctx.attr.target_libc != "macosx" - - # TODO(#8303): Mac crosstool should also declare every feature. - if is_linux: - features = [ - dependency_file_feature, - random_seed_feature, - pic_feature, - per_object_debug_info_feature, - preprocessor_defines_feature, - includes_feature, - include_paths_feature, - fdo_instrument_feature, - cs_fdo_instrument_feature, - cs_fdo_optimize_feature, - thinlto_feature, - fdo_prefetch_hints_feature, - autofdo_feature, - build_interface_libraries_feature, - dynamic_library_linker_tool_feature, - symbol_counts_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - runtime_library_search_directories_feature, - library_search_directories_feature, - archiver_flags_feature, - force_pic_flags_feature, - fission_support_feature, - strip_debug_symbols_feature, - coverage_feature, - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - default_compile_flags_feature, - default_link_flags_feature, - libraries_to_link_feature, - user_link_flags_feature, - static_libgcc_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - else: - features = [ - supports_pic_feature, - ] + ( - [ - supports_start_end_lib_feature, - ] if ctx.attr.supports_start_end_lib else [] - ) + [ - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - cxx_builtin_include_directories = ctx.attr.cxx_builtin_include_directories, - toolchain_identifier = ctx.attr.toolchain_identifier, - host_system_name = ctx.attr.host_system_name, - target_system_name = ctx.attr.target_system_name, - target_cpu = ctx.attr.cpu, - target_libc = ctx.attr.target_libc, - compiler = ctx.attr.compiler, - abi_version = ctx.attr.abi_version, - abi_libc_version = ctx.attr.abi_libc_version, - tool_paths = tool_paths, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(mandatory = True), - "toolchain_identifier": attr.string(mandatory = True), - "host_system_name": attr.string(mandatory = True), - "target_system_name": attr.string(mandatory = True), - "target_libc": attr.string(mandatory = True), - "abi_version": attr.string(mandatory = True), - "abi_libc_version": attr.string(mandatory = True), - "cxx_builtin_include_directories": attr.string_list(), - "tool_paths": attr.string_dict(), - "compile_flags": attr.string_list(), - "dbg_compile_flags": attr.string_list(), - "opt_compile_flags": attr.string_list(), - "cxx_flags": attr.string_list(), - "link_flags": attr.string_list(), - "link_libs": attr.string_list(), - "opt_link_flags": attr.string_list(), - "unfiltered_compile_flags": attr.string_list(), - "coverage_compile_flags": attr.string_list(), - "coverage_link_flags": attr.string_list(), - "supports_start_end_lib": attr.bool(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/cc_wrapper.sh b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/config/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/config/BUILD deleted file mode 100644 index 268d13d6e..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/config/BUILD +++ /dev/null @@ -1,53 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/cc:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://marketplace.gcr.io/google/rbe-ubuntu16-04@sha256:2b73cbf679cbf11ed1f782511d3eb8ec7d69049b5947f503c190e9352fd27289" - } - properties { - name: "OSFamily" - value: "Linux" - } - """, -) diff --git a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/java/BUILD b/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/configs/ubuntu16_04_clang/9.0.0/bazel_1.0.0/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/configs/ubuntu16_04_clang/BUILD b/configs/ubuntu16_04_clang/BUILD deleted file mode 100644 index 9ecc1c3b7..000000000 --- a/configs/ubuntu16_04_clang/BUILD +++ /dev/null @@ -1,31 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This is the platform used by BuildKite CI that enables -# docker capabilities for spinning up sibling containers -platform( - name = "platform_docker", - parents = ["@buildkite_config//config:platform"], - remote_execution_properties = """ - {PARENT_REMOTE_EXECUTION_PROPERTIES} - properties: { - name: "dockerSiblingContainers" - value: "true" - } - """, -) diff --git a/configs/ubuntu16_04_clang/README.md b/configs/ubuntu16_04_clang/README.md deleted file mode 100644 index 1571e03f7..000000000 --- a/configs/ubuntu16_04_clang/README.md +++ /dev/null @@ -1,2 +0,0 @@ -This folder contains Bazel configuration artifacts for a ubuntu16_04 based clang -toolchain. diff --git a/configs/ubuntu16_04_clang/latest/BUILD b/configs/ubuntu16_04_clang/latest/BUILD deleted file mode 100644 index 842a7dea6..000000000 --- a/configs/ubuntu16_04_clang/latest/BUILD +++ /dev/null @@ -1,78 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This file is auto-generated from release/cc/latest.tpl and should not -# be modified directly. - -PACKAGE = "//configs/ubuntu16_04_clang/" - -LATEST_CONFIG_VERSION = "1.2" - -LATEST_BAZEL_VERSION = "0.25.0" - -CONFIG_TYPES = [ - "default", - "msan", -] - -# DO NOT depend on the following latest alias in your production jobs. -# These are for internal and our CI use only. We DO NOT guarantee that they -# will always work. -[alias( - name = "crosstool_top_" + config_type, - actual = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/" + config_type + ":toolchain", -) for config_type in CONFIG_TYPES] - -[alias( - name = "toolchain_" + config_type, - actual = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/cpp:cc-toolchain-clang-x86_64-" + config_type, -) for config_type in CONFIG_TYPES] - -alias( - name = "platform", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":rbe_ubuntu1604_jdk8", -) - -alias( - name = "javabase", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":jdk8", -) - -# For internal testing purpose only. -toolchain( - name = "toolchain_docker", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:support_docker", - "//constraints:xenial", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# For internal testing purpose only. -alias( - name = "platform_docker", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":nosla_xenial_docker", -) diff --git a/configs/ubuntu16_04_clang/releases.yaml b/configs/ubuntu16_04_clang/releases.yaml deleted file mode 100644 index d6f8a1c3d..000000000 --- a/configs/ubuntu16_04_clang/releases.yaml +++ /dev/null @@ -1,462 +0,0 @@ -# Autogenerated file. Manual changes may be overridden. -- commitSHA: 92dd8a7a518a2fb7ba992d47c8b38299fe0be825 - digest: 36e5cb9f15543faa195daa9ee9c8a7f0306f6b4f3e407ffcdb9410884d9ac4de - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.25.2 - (2019/05/14) (#503) - date: "2019-05-14" - bazelVersion: 0.25.2 - configVersion: 0 -- commitSHA: beb998897d8ab70acf91aabe80a2908435b6f287 - digest: 0606a6a29ff3e21a18872acd5943f1fce15c2fd13c682693ca64a1088ecf7847 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.26.0 - (2019/05/29) (#531) - date: "2019-05-29" - bazelVersion: 0.26.0 - configVersion: 0 -- commitSHA: 38f8a35f58e496ea67f86617f0b1081093f9ab93 - digest: c6159396a571280c71d072a38147d43dcb44f78fc15976d0d47e6d0bf015458d - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.26.0 - (2019/05/31) (#542) - date: "2019-05-31" - bazelVersion: 0.26.0 - configVersion: 1 -- commitSHA: e4291118a2cce5e71e10086f4d89b8bdd9c4d775 - digest: 37cdd6e1ba444cfc7c93d68e906cb9f00bf4511723f9ebe5955a1bbbb632de02 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.26.1 - (2019/06/07) (#551) - date: "2019-06-07" - bazelVersion: 0.26.1 - configVersion: 2 -- commitSHA: 4bd5df80d77aa7f4fb943dfdfad5c9056a62fb47 - digest: e76afea244b1767e19fb38e1f1be448ebdf48d52ade0b3687c5794d8a1362fe8 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.26.1 - (2019/06/10) (#555) - date: "2019-06-11" - bazelVersion: 0.26.1 - configVersion: 3 -- commitSHA: 7e274bb38ffdb81f3d83ce88b077322798b543a1 - digest: 4598bf5a8b4f5ced82c782899438a7ba695165d47b3bf783ce774e89a8c6e617 - title: add configs for 0.27.0 (#574) - date: "2019-06-18" - bazelVersion: 0.27.0 - configVersion: 0 -- commitSHA: 2a320349f3ca308618354324773b7e243c15a469 - digest: 28cb3666da80fbc62d4c46814f5468dd5d0b59f9064c0b933eee3140d706d330 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.27.1 - (2019/07/03) (#607) - date: "2019-07-03" - bazelVersion: 0.27.1 - configVersion: 1 -- commitSHA: e6e7db64dfcfe82f54782a75ee549b0e392ecefc - digest: 68e7678473090542e679ce7e6aa8a3ba5669577dede2b404f9865d556bd99f10 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.0 - (2019/07/10) (#620) - date: "2019-07-10" - bazelVersion: 0.28.0 - configVersion: 0 -- commitSHA: 2a0b86e67210a5b51dce4a5c4bc412522a1f5aad - digest: 38ec4b3cd5079d81f3643bdb4f80e54e98b1005f39aa0f5f31323a3eae06db8e - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.0 - (2019/07/17) (#640) - date: "2019-07-17" - bazelVersion: 0.28.0 - configVersion: 1 -- commitSHA: c6c294672762f8649132132b14c3770e2b417053 - digest: dcb58e7e5f0b4da54c6c5f8ebc65e63fcfb37414466010cf82ceff912162296e - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.1 - (2019/07/22) (#645) - date: "2019-07-22" - bazelVersion: 0.28.1 - configVersion: 2 -- commitSHA: 95a47fb414028e6e67d0a1b636ab7316645659b9 - digest: d8c2f20deb2f6143bac792d210db1a4872102d81529fe0ea3476c1696addd7ff - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.1 - (2019/08/01) (#652) - date: "2019-08-01" - bazelVersion: 0.28.1 - configVersion: 3 -- commitSHA: 231235921ce9b0a81efcc45ba3f4e804d957da49 - digest: e71eadcfcbdb47b4b740eb48b32ca4226e36aabc425d035a18dd40c2dda808c1 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.1 - (2019/08/08) (#661) - date: "2019-08-08" - bazelVersion: 0.28.1 - configVersion: 4 -- commitSHA: a7d896554f2adbd7e702cc88364f8cbd63624786 - digest: b72e7a911436b2900b05759a1fcd735070edbd4442f0a3506ef021fdcd6e15b3 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.1 - (2019/08/14) (#666) - date: "2019-08-14" - bazelVersion: 0.28.1 - configVersion: 5 -- commitSHA: 1083686fde6032378d52b4c98044922cebde364e - digest: 668bb7a8600e50e8e6a58effc15f86b7291475c9a467b7b92c8c6e1513000418 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.28.1 - (2019/08/21) (#672) - date: "2019-08-22" - bazelVersion: 0.28.1 - configVersion: 6 -- commitSHA: d57a52e42fa980d9ef623802b963f398b7bb7df6 - digest: b8f105a6b226603d64de0f9f4fc80eee13c7d341184eb3275a2869a88cca407b - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.0 - (2019/08/28) (#676) - date: "2019-08-29" - bazelVersion: 0.29.0 - configVersion: 0 -- commitSHA: 632b6d3a21248b599e434da271d3a95c7e2f8a21 - digest: ab0d8aaeaeeef413ddb03922dbdb99bbae9e1b2c157a87c77d70d45a830be5b0 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.0 - (2019/09/04) (#680) - date: "2019-09-04" - bazelVersion: 0.29.0 - configVersion: 1 -- commitSHA: bd74ad6e24e506d3da310f4012ade29784bd63ae - digest: a019fbd579ce5aed0239de865b2d8281dbb809efd537bf42e0d366783e8dec65 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/09/10) (#688) - date: "2019-09-10" - bazelVersion: 0.29.1 - configVersion: 2 -- commitSHA: 8fd21182ec3bd0c2e1043edef0310debe268b67c - digest: 1411f2648185b0e7d8c2bb88b25cc8f2c477cc4223133461652ddce2b3154ac4 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/09/11) (#696) - date: "2019-09-11" - bazelVersion: 0.29.1 - configVersion: 3 -- commitSHA: 478d8ed1294e252602093f2c234492aca7806756 - digest: ef95c8567ebf1bc7cebf77511de50d0da04a9be3b345727595e284c59a2787cf - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/09/16) (#702) - date: "2019-09-16" - bazelVersion: 0.29.1 - configVersion: 4 -- commitSHA: a7e0dc5658986d5be0ede9887db15f2e2fb7ad20 - digest: 22ca5b8115c8673ecb627a02b606529e813961e447933863fccdf325cc5f999f - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/09/18) (#705) - date: "2019-09-18" - bazelVersion: 0.29.1 - configVersion: 5 -- commitSHA: e52cff4b6e97e068be3d335ec0f817fa16cfdd29 - digest: a1e273b6159ae858f53046f5bab9678cffa82a72f0bf0c0a9e4af8fddb91209c - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/09/19) (#708) - date: "2019-09-19" - bazelVersion: 0.29.1 - configVersion: 6 -- commitSHA: 98c0b0c1be53a239b27c98820fec2b2fe4bc8c36 - digest: e08fa958f227ea2e41627b50d9b3f1df9bd3ef8dff5a2bcee3a19bc26bc36070 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/09/25) (#713) - date: "2019-09-25" - bazelVersion: 0.29.1 - configVersion: 7 -- commitSHA: 4a0ec6c9ab35298980a7c9a0ccf1c79f5ea05bf0 - digest: b0c426d36826554f34e433e96dbd9b271e7f5b248a750f080a12534dcb944f48 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/10/03) (#722) - date: "2019-10-03" - bazelVersion: 0.29.1 - configVersion: 8 -- commitSHA: f8cd2db5122fc787ea6365dfe2d142e45c6ebc26 - digest: 388da5cc148a43081c30c260ce1167747d8fb0968ee220e4ee1d1b1b8212eaa3 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 0.29.1 - (2019/10/09) (#732) - date: "2019-10-09" - bazelVersion: 0.29.1 - configVersion: 9 -- commitSHA: ac69a34c13035a6a3f94d5add51505a991d06fd1 - digest: e9bab54199722935f239cb1cd56a80be2ac3c3843e1a6d3492e2bc11f9c21daf - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.0.0 - (2019/10/10) (#737) - date: "2019-10-10" - bazelVersion: 1.0.0 - configVersion: 0 -- commitSHA: 0a047220785670c687f3f2aa3df077ec9407521b - digest: 0b36eef8a66f39c8dbae88e522d5bbbef49d5e66e834a982402c79962281be10 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.0.0 - (2019/10/18) (#745) - date: "2019-10-19" - bazelVersion: 1.0.0 - configVersion: 1 -- commitSHA: e5a9852b9c9b7e438051831ed6d7c36ce0d07d8c - digest: 1e16833a9f0e32b292568c0dfee7bd48133c2038605757d3a430551394310006 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.1.0 - (2019/10/21) (#747) - date: "2019-10-21" - bazelVersion: 1.1.0 - configVersion: 0 -- commitSHA: e8c945614b70b4af0e04636a6ef81c4b9778972d - digest: eea054525c8b8d9aa129d0e03fc02ef47c85eea2884c4dba3700b63e01f2b192 - title: Toolchain configs for for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel - 1.1.0 (2019/11/05) (#760) - date: "2019-11-05" - bazelVersion: 1.1.0 - configVersion: 1 -- commitSHA: 4c9476054512ffcd51b5b5f44b25d627f63efb52 - digest: 3c1299efcf64a4ecf4f6def7564db28879ad2870632144d77932e7910686d3f3 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.1.0 - (2019/11/13) (#764) - date: "2019-11-13" - bazelVersion: 1.1.0 - configVersion: 2 -- commitSHA: dc412e9d81bd67da4ecaf5b77f3da8a641c8e909 - digest: 83352b6e68fa797184071f35e3b67c7c8815efadcea81bb9cdb6bbbf2e07d389 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.1.0 - (2019/11/20) (#768) - date: "2019-11-21" - bazelVersion: 1.1.0 - configVersion: 3 -- commitSHA: 2cce0418356b2bd6071396e6f81e70fa3c143647 - digest: e0c5fafbaffe112106560cf135e232eb5edab07eaf910f85752d94aabc25b6a7 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.2.0 - (2019/11/25) (#772) - date: "2019-11-25" - bazelVersion: 1.2.0 - configVersion: 0 -- commitSHA: a89111143095da991fb456b23a9a8182a05add9c - digest: c969f09ffb8ca202692c68b17727fe5c1a8d94cd320e6d62e6c06c75e7d2b723 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.2.1 - (2019/11/26) (#774) - date: "2019-11-26" - bazelVersion: 1.2.1 - configVersion: 1 -- commitSHA: 5321b4e4d9004346eca612b451129a984e11e467 - digest: ca8aa49ceb47e9bee04dd67f0bec0b010032b37ebbe67147b535237e801d9a87 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.2.1 - (2019/12/04) (#777) - date: "2019-12-05" - bazelVersion: 1.2.1 - configVersion: 2 -- commitSHA: 7e54f2e70c39c2298a6ddaa8739b6184a7696c2c - digest: fc55f4d9ee8e3d9535395717d3ee892116d9bccaa386c447a1cb100d4509affe - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.2.1 - (2019/12/09) (#780) - date: "2019-12-10" - bazelVersion: 1.2.1 - configVersion: 3 -- commitSHA: c2dc666dcaadc5b6cd4b509837f1a183d14993af - digest: 04b10647f76983c9fb4cc8d6eb763ec90107882818a9c6bef70bdadb0fdf8df9 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 1.2.1 - (2019/12/11) (#783) - date: "2019-12-11" - bazelVersion: 1.2.1 - configVersion: 4 -- commitSHA: 981293ea4c1fb1df75134bc84093b11a289e2f24 - digest: e2126599d29f2028e6b267eba273dcc8e7f4a35ff323e9600cf42fb03875b7c6 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.0.0 - (2019/12/20) (#790) - date: "2019-12-20" - bazelVersion: 2.0.0 - configVersion: 0 -- commitSHA: f2f2fc7df788298d1a567dd094d2d60ee59d9afb - digest: 3e3d8c72071423de88dcad2034ade916768ec2d91b48849e3772a8aad9c77ada - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.0.0 - (2020/01/06) (#794) - date: "2020-01-08" - bazelVersion: 2.0.0 - configVersion: 1 -- commitSHA: 0b442a1bf997840c4f1063ee8a90605392418741 - digest: a653c9d318e42b14c0ccd7ac50c4a2a276c0db1e39743ab88b5aa2f0bc9cf607 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.0.0 - (2020/01/10) (#799) - date: "2020-01-10" - bazelVersion: 2.0.0 - configVersion: 2 -- commitSHA: 6b3a09762fdc8c207b0b8e2b121b4a4d7ec32544 - digest: a5635f7c47d08cae4c5690a0c5a6c5d4276c9f6fe7a510659c8435c525ef0d41 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.0.0 - (2020/01/22) (#813) - date: "2020-01-22" - bazelVersion: 2.0.0 - configVersion: 3 -- commitSHA: 888cbf7343a930a84f194e7d738a125f769fff84 - digest: b663c411acc9cf191679823aa1eb9d665358239e8bf9e6f7cbb302b41f57317c - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.0.0 - (2020/01/30) (#816) - date: "2020-01-31" - bazelVersion: 2.0.0 - configVersion: 4 -- commitSHA: 3c892a86b0e021a32695a4dcde44b12345ec86a0 - digest: aa0df93b37fae9fe88de4ab7da3bed6396561a3f03d70c562d60f306ddacff43 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.0.0 - (2020/02/05) (#818) - date: "2020-02-06" - bazelVersion: 2.0.0 - configVersion: 5 -- commitSHA: 2cd73fd57fc4b8e90e6f47e7254496279c747862 - digest: 4d348abfaddbcee0c077fc51bb1177065c3663191588ab3d958f027cbfe1818b - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.1.0 - (2020/02/10) (#820) - date: "2020-02-10" - bazelVersion: 2.1.0 - configVersion: 0 -- commitSHA: 6ebb85bd9aa4021a4e068f0308c8bd0a387a734b - digest: b5a8039df7119d618402472f3adff8a1bd0ae9d5e253f53fcc4c47122e91a3d2 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.1.1 - (2020/02/28) (#831) - date: "2020-02-28" - bazelVersion: 2.1.1 - configVersion: 1 -- commitSHA: 868cc7c901492dd457990f3d4d9a6ee447eed5cc - digest: 1342f84d4324987f63307eb6a5aac2dff6d27967860a129f5cd40f8f9b6fd7dd - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.2.0 - (2020/03/03) (#838) - date: "2020-03-05" - bazelVersion: 2.2.0 - configVersion: 0 -- commitSHA: 22b37af382404554d1129bc69b67c15325b2b8e7 - digest: 06d1bb36cdcfa9f79316f48f378614c6162b645ac36e8db63417364b461a2933 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.2.0 - (2020/03/13) (#841) - date: "2020-03-26" - bazelVersion: 2.2.0 - configVersion: 1 -- commitSHA: b5928f980c79cbdbfd0b5c5a924aeb2cd61eb4f9 - digest: 81e08efc3b26cdb14fe4188574d5797dbf8b348a79ecbe50e66f7992ab210fbe - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.2.0 - (2020/03/26) (#845) - date: "2020-03-26" - bazelVersion: 2.2.0 - configVersion: 2 -- commitSHA: 6a976945fd2017ffa6b5a0899a9caf004bb58b0f - digest: e754d6028845423b2cc7a6c375f9657fe0b0bbb196d76c8de6dd129c3aa74023 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 2.2.0 - (2020/04/03) (#848) - date: "2020-04-03" - bazelVersion: 2.2.0 - configVersion: 3 -- commitSHA: 3d29f42816f2fe9ce84cc76e69d72780ff249c34 - digest: 9ce82322f0e6f2594780ae5e011bde0ca88d5b46c097c3008ca403d49787c2eb - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.0.0 - (2020/04/08) (#851) - date: "2020-04-08" - bazelVersion: 3.0.0 - configVersion: 0 -- commitSHA: 576562afc0ce02ed996397ca33f131d5ee2b7fdd - digest: 239a1a673861eabf988e9804f45da3b94da28d1aff05c373b013193c315d9d9e - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.0.0 - (2020/04/08) (#853) - date: "2020-04-09" - bazelVersion: 3.0.0 - configVersion: 1 -- commitSHA: aee9be03b7f1e9c011b5606d3818a16fe5fcc3e9 - digest: 726b5423e1c7a3866a3a6d68e7123b4a955e9fcbe912a51e0f737e6dab1d0af2 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.1.0 - (2020/04/22) (#866) - date: "2020-04-22" - bazelVersion: 3.1.0 - configVersion: 0 -- commitSHA: 4ac1ca2dfba031876a8b2fa77f3c5540a49f5efb - digest: 144290c4166bd67e76a54f96cd504ed86416ca3ca82030282760f0823c10be48 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.1.0 - (2020/04/22) (#868) - date: "2020-04-22" - bazelVersion: 3.1.0 - configVersion: 1 -- commitSHA: 776667302e796a0cc171fe3febd1aba0cd0a1e7d - digest: d0a2219b1d9edbc430413127b9e01502bb35b3e0bdd14b5a53ad1c30ee4fda5e - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.1.0 - (2020/05/20) (#875) - date: "2020-05-20" - bazelVersion: 3.1.0 - configVersion: 2 -- commitSHA: bff3a719c9998de7e82f984b6e9e5eca39094d69 - digest: db48eed61552e25d36fe051a65d2a329cc0fb08442627e8f13960c5ab087a44e - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.2.0 - (2020/05/28) (#879) - date: "2020-05-28" - bazelVersion: 3.2.0 - configVersion: 0 -- commitSHA: 0cc23ad715433807c79674d0036ae442ab5abc4e - digest: a802b753e127a6f73f3f300db5dd83fb618cd798bc880b6a87db9a8777b7939f - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.3.0 - (2020/06/18) + disable failing abseil test (#884) - date: "2020-06-19" - bazelVersion: 3.3.0 - configVersion: 0 -- commitSHA: 82f6f165f44b8e699c878059dbe4bc9da4aef190 - digest: 2431088b38fd8e2878db17e3c5babb431de9e5c52b6d8b509d3070fa279a5be2 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.3.1 - (2020/07/02) + Fix Bazel tests (#889) - date: "2020-07-03" - bazelVersion: 3.3.1 - configVersion: 1 -- commitSHA: df08996080601f04eeae7bd519b5126845928073 - digest: 6d54b26a58457f9fca2e54f053402061ffe73e3b909b8f6bf6dedb2a3db093ea - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.3.1 - (2020/07/10) (#893) - date: "2020-07-10" - bazelVersion: 3.3.1 - configVersion: 2 -- commitSHA: a31404efffa8dd3218dcf76af617e34b45a6fdf4 - digest: 882fecfc88d3dc528f5c5681d95d730e213e39099abff2e637688a91a9619395 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.4.1 - (2020/07/14) (#896) - date: "2020-07-15" - bazelVersion: 3.4.1 - configVersion: 0 -- commitSHA: 88302540751eca80e257c06d424a39eb05653505 - digest: 7ebb200ed3ca3d1f7505659c7dfed01c4b5cb04c3a6f34140726fe22f5d35e86 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.4.1 - (2020/08/07) (#902) - date: "2020-08-10" - bazelVersion: 3.4.1 - configVersion: 1 -- commitSHA: 33e429e481c3aafc7feb1b0121d67d9760d28dd0 - digest: caf516464966470c075c33fae53c33ada5f32f1d43dbeaaea7388fe6e006d001 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.4.1 - (2020/08/26) (#905) - date: "2020-08-26" - bazelVersion: 3.4.1 - configVersion: 2 -- commitSHA: 55023929feb290e74ed5c6e4ef5ecf97948f222b - digest: 89a053218639b1c5e3589a859bb310e0a402dedbe4ee369560e66026ae5ef1f2 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.5.0 - (2020/09/03) (#910) - date: "2020-09-04" - bazelVersion: 3.5.0 - configVersion: 0 -- commitSHA: c9164d01ae719a4b50e842eaa16795113cc53d50 - digest: 698d52e561cc8b5f502dc1ce83b6db72d5dabed4ae756393fb326b0243e4e20c - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.5.1 - (2020/10/01) (#914) - date: "2020-10-01" - bazelVersion: 3.5.1 - configVersion: 1 -- commitSHA: dfc67056200b674accd08d8f9a21e328098c07e2 - digest: 4fb3ceea08101ec41208e3df9e56ec72b69f3d11c56629d6477c0ff88d711cf7 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.6.0 - (2020/10/07) (#916) - date: "2020-10-08" - bazelVersion: 3.6.0 - configVersion: 0 -- commitSHA: 3bac046cdcbf9d00179827c7d094723d3b8495be - digest: 8e0633dfb59f704594f19ae996a35650747adc621ada5e8b9fb588f808c89cb0 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.7.0 - (2020/10/21) (#918) - date: "2020-11-02" - bazelVersion: 3.7.0 - configVersion: 0 -- commitSHA: 109dfdb8a8ffb47a45fa4b4dea58f0b21f708e70 - digest: 8c9728dc1bb3e8356b344088dfd10038984be74e1c8d6e92dbb05f21cabbb8e4 - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.7.1 - (2020/11/26) (#921) - date: "2020-11-26" - bazelVersion: 3.7.1 - configVersion: 1 -- commitSHA: c02cf6a83a7dc41b9495ee5959e3d5bf9924a2c4 - digest: 1caf8584434d3e31be674067996be787cfa511fda2a0f05811131b588886477f - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 3.7.2 - (2021/01/07) (#928) - date: "2021-01-07" - bazelVersion: 3.7.2 - configVersion: 2 -- commitSHA: b353698f411322e66ce0cf468cfd4d5572e85d28 - digest: 1adf5db506a7e3c465a26988514cfc3971af6d5b3c2218925cd6e71ee443fc3f - title: Toolchain configs for marketplace.gcr.io/google/rbe-ubuntu16-04, Bazel 4.0.0 - (2021/01/22) (#933) - date: "2021-01-22" - bazelVersion: 4.0.0 - configVersion: 0 diff --git a/configs/ubuntu16_04_clang/versions.bzl b/configs/ubuntu16_04_clang/versions.bzl deleted file mode 100644 index 8fa11804c..000000000 --- a/configs/ubuntu16_04_clang/versions.bzl +++ /dev/null @@ -1,19 +0,0 @@ -# Generated file, do not modify by hand -# Generated by 'rbe_autoconfig_autogen_ubuntu1604' rbe_autoconfig rule -"""Definitions to be used in rbe_repo attr of an rbe_autoconf rule """ -toolchain_config_spec0 = struct(config_repos = [], create_cc_configs = True, create_java_configs = True, env = {"ABI_LIBC_VERSION": "glibc_2.19", "ABI_VERSION": "clang", "BAZEL_COMPILER": "clang", "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", "BAZEL_TARGET_CPU": "k8", "BAZEL_TARGET_LIBC": "glibc_2.19", "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", "CC": "clang", "CC_TOOLCHAIN_NAME": "linux_gnu_x86"}, java_home = "/usr/lib/jvm/java-8-openjdk-amd64", java_version = "8", name = "9.0.0") -toolchain_config_spec1 = struct(config_repos = [], create_cc_configs = True, create_java_configs = True, env = {"ABI_LIBC_VERSION": "glibc_2.19", "ABI_VERSION": "clang", "BAZEL_COMPILER": "clang", "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", "BAZEL_TARGET_CPU": "k8", "BAZEL_TARGET_LIBC": "glibc_2.19", "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", "CC": "clang", "CC_TOOLCHAIN_NAME": "linux_gnu_x86"}, java_home = "/usr/lib/jvm/java-8-openjdk-amd64", java_version = "8", name = "8.0.0") -toolchain_config_spec2 = struct(config_repos = [], create_cc_configs = True, create_java_configs = True, env = {"ABI_LIBC_VERSION": "glibc_2.19", "ABI_VERSION": "clang", "BAZEL_COMPILER": "clang", "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", "BAZEL_TARGET_CPU": "k8", "BAZEL_TARGET_LIBC": "glibc_2.19", "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", "CC": "clang", "CC_TOOLCHAIN_NAME": "linux_gnu_x86"}, java_home = "/usr/lib/jvm/java-8-openjdk-amd64", java_version = "8", name = "10.0.0") -toolchain_config_spec3 = struct(config_repos = [], create_cc_configs = True, create_java_configs = True, env = {"ABI_LIBC_VERSION": "glibc_2.19", "ABI_VERSION": "clang", "BAZEL_COMPILER": "clang", "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", "BAZEL_TARGET_CPU": "k8", "BAZEL_TARGET_LIBC": "glibc_2.19", "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", "CC": "clang", "CC_TOOLCHAIN_NAME": "linux_gnu_x86"}, java_home = "/usr/lib/jvm/java-8-openjdk-amd64", java_version = "8", name = "11.0.0") -_TOOLCHAIN_CONFIG_SPECS = [toolchain_config_spec0, toolchain_config_spec1, toolchain_config_spec2, toolchain_config_spec3] -_BAZEL_TO_CONFIG_SPEC_NAMES = {"0.20.0": ["8.0.0"], "0.21.0": ["8.0.0"], "0.22.0": ["8.0.0", "9.0.0"], "0.23.0": ["8.0.0", "9.0.0"], "0.23.1": ["8.0.0", "9.0.0"], "0.23.2": ["9.0.0"], "0.24.0": ["9.0.0"], "0.24.1": ["9.0.0"], "0.25.0": ["9.0.0"], "0.25.1": ["9.0.0"], "0.25.2": ["9.0.0"], "0.26.0": ["9.0.0"], "0.26.1": ["9.0.0"], "0.27.0": ["9.0.0"], "0.27.1": ["9.0.0"], "0.28.0": ["9.0.0"], "0.28.1": ["9.0.0"], "0.29.0": ["9.0.0"], "0.29.1": ["9.0.0", "10.0.0"], "1.0.0": ["9.0.0", "10.0.0"], "1.0.1": ["10.0.0"], "1.1.0": ["10.0.0"], "1.2.0": ["10.0.0"], "1.2.1": ["10.0.0"], "2.0.0": ["10.0.0"], "2.1.0": ["10.0.0"], "2.1.1": ["10.0.0", "11.0.0"], "2.2.0": ["11.0.0"], "3.0.0": ["11.0.0"], "3.1.0": ["11.0.0"], "3.2.0": ["11.0.0"], "3.3.0": ["11.0.0"], "3.3.1": ["11.0.0"], "3.4.1": ["11.0.0"], "3.5.0": ["11.0.0"], "3.5.1": ["11.0.0"], "3.6.0": ["11.0.0"], "3.7.0": ["11.0.0"], "3.7.1": ["11.0.0"], "3.7.2": ["11.0.0"], "4.0.0": ["11.0.0"]} -LATEST = "sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1" -CONTAINER_TO_CONFIG_SPEC_NAMES = {"sha256:01b134af5416df3d240f2028d2a1d52b5a27cf24b12b62de82e635bc8718caf0": ["11.0.0"], "sha256:06f8f8e9f97daa1c15466536dc2a7ae6641d16962d7b58a393af8060e460f571": ["10.0.0"], "sha256:09fbb5438d51626dabfe096db381b733af6ed5fd59f07f0a311840598f78019c": ["9.0.0"], "sha256:1062b3c9002e6c09e31d3463fc5c24b0d2212f706733404918e18cff8f66dc5c": ["10.0.0"], "sha256:169876b30f3f8ec0430720d319c7eb8a66268501ca62e2acd4e0e7867d5883df": ["11.0.0"], "sha256:1a8ed713f40267bb51fe17de012fa631a20c52df818ccb317aaed2ee068dfc61": ["11.0.0"], "sha256:1ab40405810effefa0b2f45824d6d608634ccddbf06366760c341ef6fbead011": ["10.0.0"], "sha256:1e7bf60f191f6221b010f9338b57936d378baa7b6488dcf5235e2939d62fb9ec": ["10.0.0"], "sha256:29dc13bace3faca2b42e8dbd32c314bed960c313b9e144575eee58338eead9a8": ["10.0.0"], "sha256:2b73cbf679cbf11ed1f782511d3eb8ec7d69049b5947f503c190e9352fd27289": ["9.0.0"], "sha256:2c925275fb30478602cd53651eeaaf015f964ad1b84d3947ed710802f054035b": ["9.0.0"], "sha256:3c104745837918f854415f78f63afe7f680f0876dda837058c38e6eee54e253c": ["10.0.0"], "sha256:3e98e2e1233de1aed4ed7d7e05450a3f75b8c8d6f6bf53f1b390b5131c790f6f": ["9.0.0"], "sha256:4638ee6192eb79354f25d89f190331113997ba1713d7626023b693470dfc52ec": ["11.0.0"], "sha256:4818e1254bb6c85f4ea1ca7a6e0c705f7ed6944809704df88137fa535d681be5": ["11.0.0"], "sha256:4bfd33aa9ce73e28718385b8c01608a79bc6546906f01cf9329311cace1766a1": ["10.0.0"], "sha256:5464e3e83dc656fc6e4eae6a01f5c2645f1f7e95854b3802b85e86484132d90e": ["11.0.0"], "sha256:57fbf17cb0d43fb7a00b4e0476750643cb80377e5c38b2e28490d6c69ad8fa2d": ["10.0.0"], "sha256:5e750dd878df9fcf4e185c6f52b9826090f6e532b097f286913a428290622332": ["11.0.0"], "sha256:677c1317f14c6fd5eba2fd8ec645bfdc5119f64b3e5e944e13c89e0525cc8ad1": ["9.0.0"], "sha256:69c9f1652941d64a46f6f7358a44c1718f25caa5cb1ced4a58ccc5281cd183b5": ["9.0.0"], "sha256:6ad1d0883742bfd30eba81e292c135b95067a6706f3587498374a083b7073cb9": ["10.0.0"], "sha256:823aa3cc811b40d8cd7a8df529553ceb8a49bf2adffcebedc4e49dbd8daafca0": ["9.0.0"], "sha256:87d0fa2c56558f2f0d05116e6142b29d9ee509776be5fa9794a57f281b75b14e": ["10.0.0"], "sha256:87e1bb4a47ade8ad4db467a2339bd0081fcf485ec02bcfc3b30309280b38d14b": ["10.0.0"], "sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c": ["8.0.0"], "sha256:91739a2a3979753111d563fc0202e10e9cd8b9b2ce9552d6a7213892cfe2deb7": ["10.0.0"], "sha256:93f7e127196b9b653d39830c50f8b05d49ef6fd8739a9b5b8ab16e1df5399e50": ["10.0.0"], "sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b": ["9.0.0"], "sha256:98cd34f400a696c0409a3aa0411923b7198aced800a84f23b31f883f8bf407e7": ["9.0.0"], "sha256:9bd8ba020af33edb5f11eff0af2f63b3bcb168cd6566d7b27c6685e717787928": ["8.0.0"], "sha256:9d3104c820537dbf975c78048ddbe71d3f82515cf92b1106ddc552292c187511": ["10.0.0"], "sha256:a015ac77d435c0a68b7339c96672416649a536cfe2dd8316f3a6d14f007ab8e6": ["11.0.0"], "sha256:ac36d37616b044ee77813fc7cd36607a6dc43c65357f3e2ca39f3ad723e426f6": ["10.0.0"], "sha256:aec4629f0856fef325ad03e6b593ccc52eff3328ced6cac351667b85eec48f88": ["9.0.0"], "sha256:b27c9c4786d5bd1c709aa979b7432328806e0ff671e2175d696584eec4fd0ec3": ["11.0.0"], "sha256:b4dad0bfc4951d619229ab15343a311f2415a16ef83bcaa55b44f4e2bf1cf635": ["11.0.0"], "sha256:b516a2d69537cb40a7c6a7d92d0008abb29fba8725243772bdaf2c83f1be2272": ["11.0.0"], "sha256:bc6a2ad47b24d01a73da315dd288a560037c51a95cc77abb837b26fef1408798": ["9.0.0"], "sha256:d4edc52e8c0171905fc43773846b84d8d6ab4f75354986b82f9eddb6563bbe0f": ["10.0.0"], "sha256:d7bea5c70932edfddafda2da51814a17712585df319bbc11b4d17f662aec6c46": ["9.0.0"], "sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729": ["9.0.0"], "sha256:ec8710e636220c090b84f80a657a61b548dc94d4e3df5e3c42ca048ca74bcfb0": ["10.0.0"], "sha256:ef6ab043a2b570fbfb14121c78248f1ba496fab78df017acbb121fcd01731e74": ["11.0.0"], "sha256:f3120a030a19d67626ababdac79cc787e699a1aa924081431285118f87e7b375": ["8.0.0"], "sha256:f5d13baa00009baffb87194cd52cef0165b52d37477093ff72410114664f4380": ["9.0.0"], "sha256:f6568d8168b14aafd1b707019927a63c2d37113a03bcee188218f99bd0327ea1": ["11.0.0"], "sha256:f6fb11fbdc2965f7fef1bcc81565e5bc41a6a91d5ee7a375dbb3a8ea130de5f1": ["9.0.0"], "sha256:fbd499b53a377fe2c6c5e65c33bdecd9393871e19a64eaf785fb6491f31849d3": ["9.0.0"], "sha256:fd5690d000da5759121f28ccbc19ebb4545841d816bbf6a72de482cf3e7ce491": ["10.0.0"]} -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = toolchain_config_spec0 -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/constraints/BUILD b/constraints/BUILD deleted file mode 100644 index 0c2296643..000000000 --- a/constraints/BUILD +++ /dev/null @@ -1,39 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# Constraints used in configuring the remote platforms and toolchains. -constraint_setting(name = "linux_distribution") - -constraint_value( - name = "jessie", - constraint_setting = ":linux_distribution", -) - -constraint_value( - name = "xenial", - constraint_setting = ":linux_distribution", -) - -# Constraints used to configure docker. - -constraint_setting(name = "docker") - -constraint_value( - name = "support_docker", - constraint_setting = ":docker", -) diff --git a/constraints/sanitizers/BUILD b/constraints/sanitizers/BUILD deleted file mode 100644 index bf53292f7..000000000 --- a/constraints/sanitizers/BUILD +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# Constraints used to configure sanitizers. - -constraint_setting(name = "msan") - -constraint_value( - name = "support_msan", - constraint_setting = ":msan", -) diff --git a/deps/BUILD b/deps/BUILD deleted file mode 100644 index 6c34971dc..000000000 --- a/deps/BUILD +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2017 Google Inc. 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. diff --git a/deps/io_bazel_rules_docker.bzl b/deps/io_bazel_rules_docker.bzl deleted file mode 100644 index 10f380c1b..000000000 --- a/deps/io_bazel_rules_docker.bzl +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2017 Google Inc. 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. -"""Commit sha for bazelbuild/rules_docker.""" - -version = "9bfcd7dbf0294ed9d11a99da6363fc28df904502" diff --git a/examples/debian8_clang/Dockerfile b/examples/debian8_clang/Dockerfile deleted file mode 100644 index 6fcbd7c22..000000000 --- a/examples/debian8_clang/Dockerfile +++ /dev/null @@ -1,30 +0,0 @@ -FROM marketplace.gcr.io/google/clang-debian8@sha256:6bf186b59972019e55acb6a46da721584ae5520218b0516542efdaa1f09caccf - -# Install Bazel deps -RUN apt-get update && yes | apt-get install -y \ - curl \ - pkg-config \ - python \ - unzip \ - zip && \ - rm -rf /var/lib/apt/lists/* - -# Install Java -RUN echo 'deb http://httpredir.debian.org/debian jessie-backports main' > /etc/apt/sources.list.d/jessie-backports.list \ - && apt-get -q update \ - && apt-get -y -q --no-install-recommends install \ - ca-certificates-java=20161107'*' \ - openjdk-8-jre-headless \ - openjdk-8-jdk-headless \ - && apt-get clean \ - && rm /var/lib/apt/lists/*_* - -# Install Bazel release version -RUN echo "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" | tee /etc/apt/sources.list.d/bazel.list -RUN curl https://bazel.build/bazel-release.pub.gpg | apt-key add - -RUN apt-get update && yes | apt-get install -y bazel && \ - rm -rf /var/lib/apt/lists/* - -ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 -ENV CC /usr/local/bin/clang -ENV GOPATH /go diff --git a/examples/debian8_clang/README.md b/examples/debian8_clang/README.md deleted file mode 100644 index be7a8fd3a..000000000 --- a/examples/debian8_clang/README.md +++ /dev/null @@ -1,3 +0,0 @@ -This folder contains a sample Dockerfile that uses as base -marketplace.gcr.io/google/clang-debian8:latest and installs all the -tools necessary to run Bazel. diff --git a/examples/remotebuildexecution/hello_world/java/BUILD b/examples/remotebuildexecution/hello_world/java/BUILD index 5471b23b6..4a72fd88a 100644 --- a/examples/remotebuildexecution/hello_world/java/BUILD +++ b/examples/remotebuildexecution/hello_world/java/BUILD @@ -13,7 +13,7 @@ # limitations under the License. java_binary( - name = "hello_java", - main_class = "HelloWorld", - srcs = ["HelloWorld.java"], + name = "hello_java", + srcs = ["HelloWorld.java"], + main_class = "HelloWorld", ) diff --git a/release/bazelrc.py b/release/bazelrc.py deleted file mode 100644 index 1a5c0a499..000000000 --- a/release/bazelrc.py +++ /dev/null @@ -1,62 +0,0 @@ -# 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. -"""Module to generate sample bazelrc file.""" - -import os -from string import Template - -from util import get_git_root - -GIT_ROOT = get_git_root() -BAZELRC_DIR = os.path.join(GIT_ROOT, "bazelrc") -LATEST_BAZELRC_LINK = BAZELRC = os.path.join(BAZELRC_DIR, "latest.bazelrc") -LICENCE_TPL = os.path.join(GIT_ROOT, "release", "license.tpl") -BAZELRC_TPL = os.path.join(GIT_ROOT, "release", "bazelrc.tpl") - - -def create_bazelrc_and_update_link(bazel_version): - """Creates new sample .bazelrc file and update latest.bazelrc symlink. - - Example bazelrc files can be found in directory bazelrc/. - - There is one sample bazelrc file Bazel version. bazelrc/latest.bazelrc should - always be symlinked to the .bazelrc file for the latest version of Bazel. - - If the file already exists in this repo, the script will delete it and - generate new one. - - Args: - bazel_version: string, the version of Bazel used to generate the configs. - """ - bazelrc_path = os.path.join( - BAZELRC_DIR, "bazel-{version}.bazelrc".format(version=bazel_version)) - - # Remove old version of this .bazelrc file. - if os.path.exists(bazelrc_path): - os.remove(bazelrc_path) - - with open(bazelrc_path, "w") as bazelrc_file: - # Write license header. - with open(LICENCE_TPL, "r") as license_header: - bazelrc_file.write(license_header.read()) - - # Write sample .bazelrc body. - with open(BAZELRC_TPL, "r") as tpl_file: - tpl = Template(tpl_file.read()).substitute(BAZEL_VERSION=bazel_version) - bazelrc_file.write(tpl) - - # Update latest.bazelrc link - if os.path.exists(LATEST_BAZELRC_LINK): - os.remove(LATEST_BAZELRC_LINK) - os.symlink(os.path.basename(bazelrc_path), LATEST_BAZELRC_LINK) diff --git a/release/bazelrc.tpl b/release/bazelrc.tpl deleted file mode 100644 index e115e0871..000000000 --- a/release/bazelrc.tpl +++ /dev/null @@ -1,92 +0,0 @@ -# This file is auto-generated from release/bazelrc.tpl and should not be -# modified directly. - -# This .bazelrc file contains all of the flags required for the provided -# toolchain with Remote Build Execution. -# -# This .bazelrc file also contains all of the flags required for the local -# docker sandboxing. - -# Depending on how many machines are in the remote execution instance, setting -# this higher can make builds faster by allowing more jobs to run in parallel. -# Setting it too high can result in jobs that timeout, however, while waiting -# for a remote machine to execute them. -build:remote --jobs=50 - -# Set several flags related to specifying the platform, toolchain and java -# properties. -# These flags are duplicated rather than imported from (for example) -# %workspace%/configs/ubuntu16_04_clang/1.2/toolchain.bazelrc to make this -# bazelrc a standalone file that can be copied more easily. -# These flags should only be used as is for the rbe-ubuntu16-04 container -# and need to be adapted to work with other toolchain containers. -build:remote --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:jdk8 -build:remote --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_${BAZEL_VERSION}/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_${BAZEL_VERSION}/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:rbe_ubuntu1604 -build:remote --host_platform=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:rbe_ubuntu1604 -build:remote --platforms=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:rbe_ubuntu1604 - -# Set various strategies so that all actions execute remotely. Mixing remote -# and local execution will lead to errors unless the toolchain and remote -# machine exactly match the host machine. -build:remote --spawn_strategy=remote -build:remote --strategy=Javac=remote -build:remote --strategy=Closure=remote -build:remote --strategy=Genrule=remote -build:remote --define=EXECUTOR=remote - -# Enable the remote cache so action results can be shared across machines, -# developers, and workspaces. -build:remote --remote_cache=remotebuildexecution.googleapis.com - -# Enable remote execution so actions are performed on the remote systems. -build:remote --remote_executor=remotebuildexecution.googleapis.com - -# Enable encryption. -build:remote --tls_enabled=true - -# Set a higher timeout value, just in case. -build:remote --remote_timeout=3600 - -# Enable authentication. This will pick up application default credentials by -# default. You can use --auth_credentials=some_file.json to use a service -# account credential instead. -build:remote --auth_enabled=true - -# The following flags are only necessary for local docker sandboxing -# with the rbe-ubuntu16-04 container. Use of these flags is still experimental. -build:docker-sandbox --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:jdk8 -build:docker-sandbox --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/1.2:jdk8 -build:docker-sandbox --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/1.2/bazel_${BAZEL_VERSION}/default:toolchain -build:docker-sandbox --experimental_docker_image=gcr.io/cloud-marketplace/google/rbe-ubuntu16-04@sha256:da0f21c71abce3bbb92c3a0c44c3737f007a82b60f8bd2930abc55fe64fc2729 -build:docker-sandbox --spawn_strategy=docker -build:docker-sandbox --strategy=Javac=docker -build:docker-sandbox --strategy=Closure=docker -build:docker-sandbox --strategy=Genrule=docker -build:docker-sandbox --define=EXECUTOR=remote -build:docker-sandbox --experimental_docker_verbose -build:docker-sandbox --experimental_enable_docker_sandbox - -# The following flags enable the remote cache so action results can be shared -# across machines, developers, and workspaces. -build:remote-cache --remote_cache=remotebuildexecution.googleapis.com -build:remote-cache --tls_enabled=true -build:remote-cache --remote_timeout=3600 -build:remote-cache --auth_enabled=true -build:remote-cache --spawn_strategy=standalone -build:remote-cache --strategy=Javac=standalone -build:remote-cache --strategy=Closure=standalone -build:remote-cache --strategy=Genrule=standalone diff --git a/release/cc/__init__.py b/release/cc/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/release/cc/cpp.tpl b/release/cc/cpp.tpl deleted file mode 100644 index d2cd6d9dd..000000000 --- a/release/cc/cpp.tpl +++ /dev/null @@ -1,17 +0,0 @@ -# This target is auto-generated from release/cpp.tpl and should not be -# modified directly. -toolchain( - name = "cc-toolchain-clang-x86_64-${TYPE}", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ${EXTRA_CONSTRAINTS} - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//${PACKAGE}/${CONFIG_VERSION}/bazel_${BAZEL_VERSION}/${TYPE}:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/release/cc/create_artifacts.py b/release/cc/create_artifacts.py deleted file mode 100644 index 26754ba5f..000000000 --- a/release/cc/create_artifacts.py +++ /dev/null @@ -1,227 +0,0 @@ -# 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. -"""Module to add METADATA and cc toolchain targets to BUILD for all configs.""" - -import imp -import os -import shlex -import shutil -from string import Template -import subprocess - -from util import get_autoconfig_target_name -from util import get_date -from util import get_git_root - -BUILD_EXTRA_LICENCE = """ -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) -""" - -GIT_ROOT = get_git_root() -LICENCE_TPL = os.path.join(GIT_ROOT, "release", "license.tpl") -CPP_TPL = os.path.join(GIT_ROOT, "release", "cc", "cpp.tpl") -LATEST_TPL = os.path.join(GIT_ROOT, "release", "cc", "latest.tpl") -SHA_MAP_FILE = os.path.join(GIT_ROOT, "rules/toolchain_containers.bzl") -CLANG_REVISION_FILE = os.path.join(GIT_ROOT, "third_party/clang/revision.bzl") - - -def create_targets(container_configs_list, bazel_version): - """Creates the new docker_toolchain_autoconfig target if not exists. - - An example target located in configs/ubuntu16_04_clang/BUILD is: - //configs/ubuntu16_04_clang:msan-ubuntu16_04-clang-1.0-bazel_0.15.0-autoconfig - - There is one target per container per Bazel version per config type. - - The script only creates new targets in the BUILD file if they do not exist, - i.e. if a target for the given version of Bazel, type and config version - already exists, then the script does not re-create it. - - Args: - container_configs_list: list of ContainerConfigs, the list of - ContainerConfigs to generate configs for. - bazel_version: string, the version of Bazel used to generate the configs. - """ - - container_sha_map = imp.load_source("toolchain_containers", SHA_MAP_FILE) - clang_revision_map = imp.load_source("clang_revision", CLANG_REVISION_FILE) - clang_revision = clang_revision_map.CLANG_REVISION - - for container_configs in container_configs_list: - - # Get the sha256 value of the container used to generate the configs. - sha = container_sha_map.toolchain_container_sha256s()[ - "%s_clang" % container_configs.distro] - - for config in container_configs.configs: - - # Get target basename from config definitions. - target = get_autoconfig_target_name( - config_type=config.config_type, - distro=container_configs.distro, - config_version=container_configs.version, - bazel_version=bazel_version) - - with open(container_configs.get_target_build_path(), "a+") as build_file: - if target not in build_file.read(): - tpl_file_path = os.path.join(GIT_ROOT, "release", "cc", - "%s.tpl" % config.config_type) - with open(tpl_file_path, "r") as tpl_file: - tpl = Template(tpl_file.read()).substitute( - DATE=get_date(), - DISTRO=container_configs.distro, - CONFIG_VERSION=container_configs.version, - BAZEL_VERSION=bazel_version, - NAME=container_configs.image, - SHA=sha, - CLANG_REVISION=clang_revision) - - build_file.write(tpl) - - -def update_latest_target_aliases(container_configs_list, bazel_version, - buildifier): - """Updates the alias targets pointing to latest toolchain targets. - - Example latest aliases clang-ubuntu container are located in - configs/ubuntu16_04_clang/latest/BUILD. - - There is one BUILD file to contain all aliases for a container_config. - - Args: - container_configs_list: list of ContainerConfigs, the list of - ContainerConfigs to generate configs for. - bazel_version: string, the version of Bazel used to generate the configs. - """ - - for container_configs in container_configs_list: - - constraints = list(container_configs.constraints) - - with open(container_configs.get_latest_aliases_build_path(), - "w") as build_file: - # Update the BUILD file with aliases for latest toolchain targets. - with open(LATEST_TPL, "r") as tpl_file: - tpl = Template(tpl_file.read()).substitute( - CONFIG_VERSION=container_configs.version, - BAZEL_VERSION=bazel_version, - PACKAGE=container_configs.package, - PLATFORM=container_configs.platform_target, - CONFIG_TYPES=", ".join( - [("\"%s\"" % config_type) - for config_type in container_configs.config_types]), - EXTRA_CONSTRAINTS="\n".join( - [("\"%s\"," % constraint) for constraint in constraints])) - - build_file.write(tpl) - - subprocess.check_call( - shlex.split( - "%s --lint=fix %s" % - (buildifier, container_configs.get_latest_aliases_build_path()))) - - -def generate_toolchain_definition(container_configs_list, bazel_version, - buildifier): - """Generates new cpp toolchain definitions. - - Example cpp toolchain definitions for clang-ubuntu container are located in - configs/ubuntu16_04_clang/1.0/bazel_0.15.0/cpp/. - - There is one BUILD file to contain all cpp toolchain definitions for each - config type (e.g. default, msan) per container per Bazel version. - - If the file already exists in this repo, the script will delete it and - generate new one. - - Args: - container_configs_list: list of ContainerConfigs, the list of - ContainerConfigs to generate configs for. - bazel_version: string, the version of Bazel used to generate the configs. - """ - - for container_configs in container_configs_list: - - cpp_dir = os.path.dirname(container_configs.get_cpp_build_path()) - - # Remove old cpp directory if exists. - if os.path.exists(cpp_dir): - print("\nOld version of cpp toolchain definition already exists. " - "Deleting and generating again.") - shutil.rmtree(cpp_dir) - os.makedirs(cpp_dir) - - with open(container_configs.get_cpp_build_path(), "w") as build_file: - # Write license header. - with open(LICENCE_TPL, "r") as license_header: - build_file.write(license_header.read()) - - # Write extra license string required for BUILD file. - build_file.write(BUILD_EXTRA_LICENCE) - - for config in container_configs.configs: - - with open(container_configs.get_cpp_build_path(), "a") as build_file: - with open(CPP_TPL, "r") as tpl_file: - - # Merge constraint lists. Remove duplicates while perserving order. - constraints = list(container_configs.constraints) - for constraint in config.constraints: - if constraint not in constraints: - constraints.append(constraint) - - tpl = Template(tpl_file.read()).substitute( - TYPE=config.config_type, - CONFIG_VERSION=container_configs.version, - BAZEL_VERSION=bazel_version, - PACKAGE=container_configs.package, - EXTRA_CONSTRAINTS="\n".join( - [("\"%s\"," % constraint) for constraint in constraints])) - - build_file.write(tpl) - - subprocess.check_call( - shlex.split("%s --lint=fix %s" % - (buildifier, container_configs.get_cpp_build_path()))) - - -def generate_metadata(container_configs_list): - """Creates the METADATA file with the container register path. - - Example METADATA file can be found at - configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/METADATA. - - There is one METADATA file per container per Bazel version per config type. - - If the file already exists in this repo, the script will delete it and - generate new one. - - Args: - container_configs_list: list of ContainerConfigs, the list of - ContainerConfigs to generate configs for. - """ - - container_sha_map = imp.load_source("toolchain_containers", SHA_MAP_FILE) - - for container_configs in container_configs_list: - # Get the sha256 value of the container used to generate the configs. - sha = container_sha_map.toolchain_container_sha256s()[ - "%s_clang" % container_configs.distro] - - for config in container_configs.configs: - with open(config.get_metadata_path(), "w") as metadata_file: - metadata_file.write("{image}@{sha}\n".format( - image=container_configs.image, sha=sha)) diff --git a/release/cc/default.tpl b/release/cc/default.tpl deleted file mode 100644 index a7638b890..000000000 --- a/release/cc/default.tpl +++ /dev/null @@ -1,17 +0,0 @@ - -# This target is auto-generated from release/default.tpl and should not be -# modified directly. -# Created on ${DATE} -# Container: ${NAME}@${SHA} -# Clang revision: ${CLANG_REVISION} -docker_toolchain_autoconfig( - name = "default-${DISTRO}-clang-${CONFIG_VERSION}-bazel_${BAZEL_VERSION}-autoconfig", - additional_repos = ${DISTRO}_clang_default_repos(), - base = "@${DISTRO}-clang//image", - bazel_version = "${BAZEL_VERSION}", - env = clang_env(), - keys = ${DISTRO}_clang_default_keys(), - packages = ${DISTRO}_clang_default_packages(), - tags = ["manual"], - test = True, -) diff --git a/release/cc/execute_targets.py b/release/cc/execute_targets.py deleted file mode 100644 index e7da2ca7d..000000000 --- a/release/cc/execute_targets.py +++ /dev/null @@ -1,115 +0,0 @@ -# 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. -"""Module to exec cc toolchain targets and extract contents for all configs.""" - -from __future__ import print_function - -import atexit -import os -import shlex -import shutil -import subprocess -import tarfile - -from util import get_autoconfig_target_name -from util import get_git_root - -GIT_ROOT = get_git_root() -CONFIG_REPO = "./local_config_cc" -CONFIG_FILES = ["cc_toolchain_config.bzl", "BUILD", "cc_wrapper.sh", "dummy_toolchain.bzl"] -TMP_DIR = os.path.join(GIT_ROOT, "release", "tmp") - - -def _cleanup(): - """Cleanup generated files.""" - if os.path.exists(TMP_DIR): - shutil.rmtree(TMP_DIR) - - -def execute_and_extract_configs(container_configs_list, bazel_version, - buildifier): - """Executes the docker_toolchain_autoconfig targets and extract configs. - - If configs already exist in this repo, the script will delete them and - generate new ones. - - It generate cc configs which currently includes: CROSSTOOL, BUILD, - cc_wrapper.sh and dummy_toolchain.bzl. Examples can be found in - configs/ubuntu16_04_clang/1.0/bazel_0.15.0/default/. - - There is one such set of cc configs per container per Bazel version per config - type. - - Args: - container_configs_list: list of ContainerConfigs, the list of - ContainerConfigs to generate configs for. - bazel_version: string, the version of Bazel used to generate the configs. - """ - - atexit.register(_cleanup) - - # Create temporary directory to store generated tarballs of configs. - if os.path.exists(TMP_DIR): - shutil.rmtree(TMP_DIR) - os.makedirs(TMP_DIR) - - for container_configs in container_configs_list: - for config in container_configs.configs: - - # Get target basename from config definitions. - target = get_autoconfig_target_name( - config_type=config.config_type, - distro=container_configs.distro, - config_version=container_configs.version, - bazel_version=bazel_version) - - # Remove old config dir if exists. - if os.path.exists(config.get_config_dir()): - print("\nOld version of toolchain configs for {target} already exists. " - "Deleting and generating again.".format(target=target)) - shutil.rmtree(config.get_config_dir()) - - # Generate config directory. - os.makedirs(config.get_config_dir()) - - command = ("bazel build //{PACKAGE}:{TARGET}").format( - PACKAGE=container_configs.package, TARGET=target) - print("\nExecuting command: %s\n" % command) - subprocess.check_call(shlex.split(command)) - - command = ( - "cp " - "{GIT_ROOT}/bazel-out/k8-fastbuild/bin/{PACKAGE}/{TARGET}_outputs.tar" - " {OUTPUT_DIR}/").format( - GIT_ROOT=GIT_ROOT, - OUTPUT_DIR=TMP_DIR, - PACKAGE=container_configs.package, - TARGET=target) - print("\nExecuting command: %s\n" % command) - subprocess.check_call(shlex.split(command)) - - # Extract toolchain configs. - tar_path = os.path.join(TMP_DIR, "%s_outputs.tar" % target) - tar = tarfile.open(tar_path) - - for config_file in CONFIG_FILES: - # Extract toolchain config without the CONFIG_REPO name. - member = tar.getmember(os.path.join(CONFIG_REPO, config_file)) - member.name = os.path.basename(member.name) - tar.extract(member, config.get_config_dir()) - if config_file == "BUILD" or config_file.endswith("bzl"): - subprocess.check_call( - shlex.split("%s --lint=fix %s" % - (buildifier, - os.path.join(config.get_config_dir(), config_file)))) diff --git a/release/cc/latest.tpl b/release/cc/latest.tpl deleted file mode 100644 index 7854e6bd8..000000000 --- a/release/cc/latest.tpl +++ /dev/null @@ -1,75 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -# This file is auto-generated from release/cc/latest.tpl and should not -# be modified directly. - -PACKAGE = "//${PACKAGE}/" - -LATEST_CONFIG_VERSION = "${CONFIG_VERSION}" - -LATEST_BAZEL_VERSION = "${BAZEL_VERSION}" - -CONFIG_TYPES = [${CONFIG_TYPES}] - -# DO NOT depend on the following latest alias in your production jobs. -# These are for internal and our CI use only. We DO NOT guarantee that they -# will always work. -[alias( - name = "crosstool_top_" + config_type, - actual = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/" + config_type + ":toolchain", -) for config_type in CONFIG_TYPES] - -[alias( - name = "toolchain_" + config_type, - actual = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/cpp:cc-toolchain-clang-x86_64-" + config_type, -) for config_type in CONFIG_TYPES] - -alias( - name = "platform", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":${PLATFORM}_jdk8", -) - -alias( - name = "javabase", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":jdk8", -) - -# For internal testing purpose only. -toolchain( - name = "toolchain_docker", - exec_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - "//constraints:support_docker", - ${EXTRA_CONSTRAINTS} - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = PACKAGE + LATEST_CONFIG_VERSION + "/bazel_" + LATEST_BAZEL_VERSION + "/default:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# For internal testing purpose only. -alias( - name = "platform_docker", - actual = PACKAGE + LATEST_CONFIG_VERSION + ":nosla_xenial_docker", -) diff --git a/release/cc/msan.tpl b/release/cc/msan.tpl deleted file mode 100644 index 20efe0529..000000000 --- a/release/cc/msan.tpl +++ /dev/null @@ -1,19 +0,0 @@ - -# This target is auto-generated from release/msan.tpl and should not be -# modified directly. -# Created on ${DATE} -# Container: ${NAME}@${SHA} -# Clang revision: ${CLANG_REVISION} -docker_toolchain_autoconfig( - name = "msan-${DISTRO}-clang-${CONFIG_VERSION}-bazel_${BAZEL_VERSION}-autoconfig", - additional_repos = ${DISTRO}_clang_default_repos(), - base = "@${DISTRO}-clang//image", - bazel_version = "${BAZEL_VERSION}", - env = dicts.add(clang_env(), { - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - }), - keys = ${DISTRO}_clang_default_keys(), - packages = ${DISTRO}_clang_default_packages(), - tags = ["manual"], - test = True, -) diff --git a/release/config.py b/release/config.py deleted file mode 100644 index 6e783e7b0..000000000 --- a/release/config.py +++ /dev/null @@ -1,190 +0,0 @@ -# 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. -"""Data structures of toolchain configs.""" - -import os - - -class ContainerConfigs(object): - """Group of configs that are generated using the same container. - - Attributes: - distro: string, base distro of container used to generate configs. - version: string, version of the configs. - image: string, the container registry entry of the image used to generated - the configs, e.g. marketplace.gcr.io/google/clang-ubuntu. - package: string, the Bazel package in which we will generate the target to - build configs. - platform_target: string, the platform target name of the corresponding RBE - container these configs will be used together with, e.g. rbe_ubuntu1604. - This is required to set value for flags: --extra_execution_platforms, - --host_platform and --platforms. - (Platform: https://docs.bazel.build/versions/master/platforms.html) - constraints: string, additional toolchain constraints needed for the cpp - toolchain definition. These must be valid targets in this repo or - @bazel_tools. - (Toolchain: https://docs.bazel.build/versions/master/toolchains.html) - configs: list of Config object, a list of configs for each supported types - generated using the container specified in the current ContainerConfig. - """ - - # Currently supported distros. - _SUPPORTED_DISTROS = ["debian8", "ubuntu16_04"] - - # Map from the container distro to additional pre-defined cpp toolchain - # definition constraints. - _DISTRO_CONSTRAINTS_MAP = { - "debian8": ["//constraints:jessie"], - "ubuntu16_04": ["//constraints:xenial"] - } - - def __init__(self, distro, version, image, package, config_types, - platform_target, git_root, bazel_version): - """Inits ContainerConfigs. - - Args: - distro: string, base distro of container used to generate configs. - version: string, version of the configs. - image: string, the container registry entry of the image used to generated - the configs, e.g. marketplace.gcr.io/google/clang-ubuntu. - package: string, the Bazel package in which we will generate the target to - build configs. - config_types: types of config to generated with this container, e.g. - default, msan. - platform_target: string, the platform target name of the corresponding RBE - container these configs will be used together with e.g. rbe_ubuntu1604. - This is required to set value for flags: --extra_execution_platforms, - --host_platform and --platforms. - (Platform: https://docs.bazel.build/versions/master/platforms.html) - git_root: the absolute path of the root directory of the current - repository. - bazel_version: the version of Bazel used to generated the configs. - - Returns: - A ContainerConfigs object. - Raises: - ValueError: An error occurred when input distro is not supported. - """ - - # Validate distro is supported. - if distro not in ContainerConfigs._SUPPORTED_DISTROS: - raise ValueError( - "Input distro: %s is not supported. Supported distros are %s" % - (distro, " ".join(ContainerConfigs._SUPPORTED_DISTROS))) - - self._git_root = git_root - self._bazel_version = bazel_version - - self.distro = distro - self.version = version - self.image = image - self.package = package - self.platform_target = platform_target - self.constraints = ContainerConfigs._DISTRO_CONSTRAINTS_MAP[distro] - self.config_types = config_types - - self.configs = [ - Config(root=self._get_config_base_dir(), config_type=config_type) - for config_type in config_types - ] - - def get_target_build_path(self): - """Returns the absolute path of the target BUILD file.""" - return os.path.join(self._git_root, self.package, "BUILD") - - def get_latest_aliases_build_path(self): - """Returns the absolute path of BUILD file with latest target aliases.""" - return os.path.join(self._git_root, self.package, "latest", "BUILD") - - def get_toolchain_bazelrc_path(self): - """Returns the absolute path of the toolchain.bazelrc file.""" - return os.path.join(self._git_root, self.package, self.version, - "toolchain.bazelrc") - - def get_platform_build_path(self): - """Returns the absolute path of BUILD file with platform definition.""" - return os.path.join(self._git_root, self.package, self.version, "BUILD") - - def get_java_runtime_build_path(self): - """Returns the absolute path of BUILD file with java runtime.""" - return self.get_platform_build_path() - - def get_cpp_build_path(self): - """Returns the absolute path of BUILD file with cpp toolchain definition.""" - return os.path.join(self._get_config_base_dir(), "cpp", "BUILD") - - def _get_config_base_dir(self): - """Returns the absolute path of bazel_{version} directory. - - This returns the absolute path of bazel_{version} directory where configs - are stored in the bazel-toolchains repo. - - For example: /.../configs/ubuntu16_04_clang/1.0/bazel_0.15.0/ - """ - return os.path.join(self._git_root, self.package, self.version, - "bazel_%s" % self._bazel_version) - - -class Config(object): - """Configs of a single type that are generated using a container. - - Attributes: - config_type: string, type of the configs, e.g. default, msan. - constraints: string, additional toolchain constraints needed for the cpp - toolchain definition. These must be valid targets in this repo or - @bazel_tools. - (Toolchain: https://docs.bazel.build/versions/master/toolchains.html) - """ - - # Currently supported config types. - _SUPPORTED_CONFIG_TYPES = ["default", "msan"] - - # Map from the config type to additional pre-defined cpp toolchain - # definition constraints. - _TYPE_CONSTRAINTS_MAP = { - "default": [], - "msan": ["//constraints/sanitizers:support_msan"] - } - - def __init__(self, root, config_type): - """Inits Config. - - Args: - root: string, absolute path to the bazel_{version} directory, e.g. - /.../configs/ubuntu16_04_clang/1.0/bazel_0.15.0/. - config_type: string, type of the configs. - - Returns: - A Config object. - Raises: - ValueError: An error occurred when input config type is not supported. - """ - - # Validate config_type is supported. - if config_type not in Config._SUPPORTED_CONFIG_TYPES: - raise ValueError( - "Input config type: %s is not supported. Supported types are %s" % - (config_type, " ".join(Config._SUPPORTED_CONFIG_TYPES))) - - self._root = root - self.config_type = config_type - self.constraints = Config._TYPE_CONSTRAINTS_MAP[config_type] - - def get_config_dir(self): - """Returns the absolute path of the cc toolchain configs directory.""" - return os.path.join(self._root, self.config_type) - - def get_metadata_path(self): - """Returns the absolute path of the METADATA file.""" - return os.path.join(self.get_config_dir(), "METADATA") diff --git a/release/config_release.py b/release/config_release.py deleted file mode 100644 index d7d4a1894..000000000 --- a/release/config_release.py +++ /dev/null @@ -1,122 +0,0 @@ -# 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. -"""Script to generate toolchain configs for all config types and containers.""" - -from __future__ import print_function - -import argparse -import sys - -# Do not generate .pyc files. -sys.dont_write_bytecode = True - -import bazelrc -import cc.create_artifacts as cc_create -import cc.execute_targets as cc_execute -from config import ContainerConfigs -import toolchain_flags -from util import get_git_root - -CONFIG_TYPES = ["default", "msan"] - -# Define path constants. -GIT_ROOT = get_git_root() - - -def _get_container_configs_list(bazel_version): - """Gets the list of container configs to generate. - - Args: - bazel_version: string, the version of Bazel used to generate configs. - - Returns: - A list of ContainerConfigs objects corresponding to the configs to generate. - """ - - ubuntu16_04_clang_configs = ContainerConfigs( - distro="ubuntu16_04", - version="1.2", - image="marketplace.gcr.io/google/clang-ubuntu", - package="configs/ubuntu16_04_clang", - config_types=CONFIG_TYPES, - platform_target="rbe_ubuntu1604", - git_root=GIT_ROOT, - bazel_version=bazel_version) - - return [ubuntu16_04_clang_configs] - - -def _parse_arguments(): - """Parses command line arguments for the script. - - Returns: - args object containing the arguments - """ - parser = argparse.ArgumentParser() - parser.add_argument( - "-b", - "--bazel_version", - required=True, - help="the version of Bazel used to generate toolchain configs") - parser.add_argument( - "-l", - "--buildifier", - default="/usr/bin/buildifier", - help="the full path of buildifier used to format toolchain configs") - return parser.parse_args() - - -def main(bazel_version, buildifier): - """Main function. - - Examples of usage: - python release/config_release.py -b 0.15.0 - - Args: - bazel_version: string, the version of Bazel used to generate the configs. - """ - - # Get current supported list of container configs to generate. - container_configs_list = _get_container_configs_list(bazel_version) - - # Only create the new target in the BUILD file if it does not exist. - cc_create.create_targets(container_configs_list, bazel_version) - - # Execute the target and extract toolchain configs. - cc_execute.execute_and_extract_configs(container_configs_list, bazel_version, - buildifier) - - # Generate METADATA file. - cc_create.generate_metadata(container_configs_list) - - # Generate new cpp toolchain definition targets. - cc_create.generate_toolchain_definition(container_configs_list, bazel_version, - buildifier) - - # Update aliases to latest toolchain configs. - cc_create.update_latest_target_aliases(container_configs_list, bazel_version, - buildifier) - - # Update toolchain.bazelrc file. - toolchain_flags.update_toolchain_bazelrc_file(container_configs_list, - bazel_version) - - # Create sample .bazelrc file and update latest.bazelrc symlink. - bazelrc.create_bazelrc_and_update_link(bazel_version) - - -if __name__ == "__main__": - - args = _parse_arguments() - main(args.bazel_version, args.buildifier) diff --git a/release/license.tpl b/release/license.tpl deleted file mode 100644 index 18a2a146b..000000000 --- a/release/license.tpl +++ /dev/null @@ -1,14 +0,0 @@ -# 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. - diff --git a/release/toolchain.bazelrc.tpl b/release/toolchain.bazelrc.tpl deleted file mode 100644 index bbc719880..000000000 --- a/release/toolchain.bazelrc.tpl +++ /dev/null @@ -1,43 +0,0 @@ -# This file is auto-generated from release/toolchain.bazelrc.tpl and should not -# be modified directly. - -# Toolchain related flags to append at the end of your .bazelrc file. -build:remote --host_javabase=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}:jdk8 -build:remote --javabase=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}:jdk8 -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}/bazel_${BAZEL_VERSION}/default:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# If you are using your own toolchain container, you need to create a platform -# target with "constraint_values" that allow for the toolchain specified with -# "extra_toolchains" to be selected (given constraints defined in -# "exec_compatible_with"). -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}/bazel_${BAZEL_VERSION}/cpp:cc-toolchain-clang-x86_64-default -build:remote --extra_execution_platforms=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}:${PLATFORM} -build:remote --host_platform=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}:${PLATFORM} -build:remote --platforms=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}:${PLATFORM} - -# Experimental configs for sanitizers, use --config=remote --config=remote- (in that order) -# See https://github.com/bazelbuild/bazel/issues/5291. -build:remote-xxsan --copt=-gmlt -build:remote-xxsan --strip=never - -build:remote-asan --config=remote-xxsan -build:remote-asan --copt=-fsanitize=address -build:remote-asan --linkopt=-fsanitize=address - -build:remote-tsan --config=remote-xxsan -build:remote-tsan --copt=-fsanitize=thread -build:remote-tsan --linkopt=-fsanitize=thread - -build:remote-msan --config=remote-xxsan -build:remote-msan --copt=-fsanitize=memory -build:remote-msan --linkopt=-fsanitize=memory -build:remote-msan --cxxopt=--stdlib=libc++ -build:remote-msan --copt=-fsanitize-memory-track-origins -build:remote-msan --host_crosstool_top=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}/bazel_${BAZEL_VERSION}/default:toolchain -build:remote-msan --crosstool_top=@bazel_toolchains//${PACKAGE}/${CONFIG_VERSION}/bazel_${BAZEL_VERSION}/msan:toolchain diff --git a/release/toolchain_flags.py b/release/toolchain_flags.py deleted file mode 100644 index f9b0bf481..000000000 --- a/release/toolchain_flags.py +++ /dev/null @@ -1,53 +0,0 @@ -# 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. -"""Module to create or update sample toolchain.bazelrc file.""" - -import os -from string import Template - -from util import get_git_root - -TPL = os.path.join(get_git_root(), "release", "toolchain.bazelrc.tpl") - - -def update_toolchain_bazelrc_file(container_configs_list, bazel_version): - """Creates/updates toolchain.bazelrc file. - - Example toolchain.bazelrc file can be found at - configs/ubuntu16_04_clang/1.0/toolchain.bazelrc. - - There is one toolchain.bazelrc file per container per config version. - - If the file already exists in this repo, the script will delete it and - generate new one. - - Args: - container_configs_list: list of ContainerConfigs, the list of - ContainerConfigs to generate configs for. - bazel_version: string, the version of Bazel used to generate the configs. - """ - - for container_configs in container_configs_list: - with open(container_configs.get_toolchain_bazelrc_path(), - "w") as toolchain_bazelrc_file: - # Create or update toolchain.bazelrc file. - with open(TPL, "r") as tpl_file: - tpl = Template(tpl_file.read()).substitute( - CONFIG_VERSION=container_configs.version, - BAZEL_VERSION=bazel_version, - PACKAGE=container_configs.package, - PLATFORM=container_configs.platform_target, - ) - - toolchain_bazelrc_file.write(tpl) diff --git a/release/util.py b/release/util.py deleted file mode 100644 index e39652388..000000000 --- a/release/util.py +++ /dev/null @@ -1,51 +0,0 @@ -# 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. -"""A set of utility functions.""" - -import datetime -import subprocess - - -def get_git_root(): - """Returns the root directory of current git repository.""" - return subprocess.check_output(["git", "rev-parse", - "--show-toplevel"]).strip() - - -def get_date(): - """Returns the current date in YYYY.MM.DD format.""" - now = datetime.datetime.now() - return "%s.%s.%s" % (now.year, now.month, now.day) - - -def get_autoconfig_target_name(config_type, distro, config_version, - bazel_version): - """Generates the docker_toolchain_autoconfig target name. - - Args: - config_type: string, the type of the configs, e.g. default, msan. - distro: string, base distro of container used to generate configs. - config_version: string, the version of the configs. - bazel_version: string, the version of Bazel used to generate the configs. - - Returns: - The docker_toolchain_autoconfig target to generate the configs. - """ - - return ("{type}-{distro}-clang-{config_version}-" - "bazel_{bazel_version}-autoconfig").format( - type=config_type, - distro=distro, - config_version=config_version, - bazel_version=bazel_version) diff --git a/repositories/BUILD b/repositories/BUILD index 5c938e69d..b454e8a66 100644 --- a/repositories/BUILD +++ b/repositories/BUILD @@ -18,19 +18,9 @@ licenses(["notice"]) # Apache 2.0 package(default_visibility = ["//visibility:public"]) -bzl_library( - name = "images", - srcs = [ - "images.bzl", - ], - deps = [ - "//rules:toolchain_containers", - ], -) - bzl_library( name = "repositories", srcs = [ - "images.bzl", + "repositories.bzl", ], ) diff --git a/repositories/images.bzl b/repositories/images.bzl deleted file mode 100644 index 3ed7637cd..000000000 --- a/repositories/images.bzl +++ /dev/null @@ -1,95 +0,0 @@ -# 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. - -# Once recursive workspace is implemented in Bazel, this file should cease -# to exist. -""" -Provides functions to pull the images used by this repository. -""" - -load( - "@io_bazel_rules_docker//container:container.bzl", - "container_pull", -) -load("//rules:toolchain_containers.bzl", "toolchain_container_sha256s") - -_REGISTRY = "marketplace.gcr.io" - -def images(): - """Pull containers used in bazel-toolchains. - - container_pull() rule depends on - - load( - "@io_bazel_rules_docker//container:container.bzl", - "container_pull", - ) - - which then depends on: - - load( - "//repositories:repositories.bzl", - bazel_toolchains_repositories = "repositories", - ) - - bazel_toolchains_repositories() - - Therefore, in the WORKSPACE, the right order to load the dependencies is: - - load( - "//repositories:repositories.bzl", - bazel_toolchains_repositories = "repositories", - ) - - bazel_toolchains_repositories() - - load( - "@io_bazel_rules_docker//repositories:repositories.bzl", - container_repositories = "repositories", - ) - - container_repositories() - - load( - "@io_bazel_rules_docker//container:container.bzl", - "container_pull", - ) - - load( - "//repositories:repositories.bzl", - bazel_toolchains_images = "images", - ) - - bazel_toolchains_images() - - ... - - """ - excludes = native.existing_rules().keys() - - if "debian8-clang" not in excludes: - container_pull( - name = "debian8-clang", - digest = toolchain_container_sha256s()["debian8_clang"], - registry = _REGISTRY, - repository = "google/clang-debian8", - ) - - if "ubuntu16_04-clang" not in excludes: - container_pull( - name = "ubuntu16_04-clang", - digest = toolchain_container_sha256s()["ubuntu16_04_clang"], - registry = _REGISTRY, - repository = "google/clang-ubuntu", - ) diff --git a/repositories/repositories.bzl b/repositories/repositories.bzl index 0f3819bc6..85100ab27 100644 --- a/repositories/repositories.bzl +++ b/repositories/repositories.bzl @@ -21,34 +21,12 @@ Provides functions to pull all dependencies of this repository. load( "@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", - "http_file", ) -load("@bazel_tools//tools/build_defs/repo:git.bzl", "git_repository") -load("@bazel_toolchains//deps:io_bazel_rules_docker.bzl", io_bazel_rules_docker_version = "version") def repositories(): """Download dependencies of bazel-toolchains.""" excludes = native.existing_rules().keys() - # ============================== Repositories ============================== - if "io_bazel_rules_docker" not in excludes: - git_repository( - name = "io_bazel_rules_docker", - commit = io_bazel_rules_docker_version, - remote = "https://github.com/bazelbuild/rules_docker.git", - # TODO (suvanjan): Add sha256 field once copybara supports it. - ) - - # Register the docker toolchain type - native.register_toolchains( - # Register the default docker toolchain that expects the 'docker' - # executable to be in the PATH - "@io_bazel_rules_docker//toolchains/docker:default_linux_toolchain", - "@io_bazel_rules_docker//toolchains/docker:default_windows_toolchain", - "@io_bazel_rules_docker//toolchains/docker:default_osx_toolchain", - ) - - # =============================== Repo rule deps ========================== if "bazel_skylib" not in excludes: http_archive( name = "bazel_skylib", @@ -56,13 +34,3 @@ def repositories(): strip_prefix = "bazel-skylib-1.0.2", urls = ["https://github.com/bazelbuild/bazel-skylib/archive/1.0.2.tar.gz"], ) - - # ================================ GPG Keys ================================ - # Bazel gpg key necessary to install Bazel in the containers. - if "bazel_gpg" not in excludes: - http_file( - name = "bazel_gpg", - downloaded_file_path = "bazel_gpg", - sha256 = "547ec71b61f94b07909969649d52ee069db9b0c55763d3add366ca7a30fb3f6d", - urls = ["https://bazel.build/bazel-release.pub.gpg"], - ) diff --git a/rules/BUILD b/rules/BUILD deleted file mode 100644 index da46ace03..000000000 --- a/rules/BUILD +++ /dev/null @@ -1,84 +0,0 @@ -# Copyright 2017 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. - -load("@bazel_skylib//:bzl_library.bzl", "bzl_library") -load("@bazel_tools//tools/build_defs/pkg:pkg.bzl", "pkg_tar") - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -exports_files([ - "install_bazel_head.sh", - "install_bazel_version.sh", -]) - -filegroup( - name = "bazel_installers", - srcs = [ - "build_bazel_version.sh", - "install_bazel_head.sh", - "install_bazel_version.sh", - ], -) - -pkg_tar( - name = "cc-sample-project-tar", - srcs = [ - "cc-sample-project/BUILD.sample", - "cc-sample-project/test.cc", - ], -) - -bzl_library( - name = "environments", - srcs = [ - "environments.bzl", - ], -) - -bzl_library( - name = "toolchain_containers", - srcs = [ - "toolchain_containers.bzl", - ], -) - -bzl_library( - name = "gcs", - srcs = [ - "gcs.bzl", - ], -) - -bzl_library( - name = "docker_config", - srcs = [ - "docker_config.bzl", - ], - deps = [ - "@bazel_toolchains//rules/container:docker_toolchains", - "@io_bazel_rules_docker//container", - ], -) - -bzl_library( - name = "rbe_repo", - srcs = [ - "rbe_repo.bzl", - ], - deps = [ - "@bazel_toolchains//rules/rbe_repo", - ], -) diff --git a/rules/README.md b/rules/README.md deleted file mode 100644 index 4f7fcfbcb..000000000 --- a/rules/README.md +++ /dev/null @@ -1,18 +0,0 @@ -# Usage - -This directory contains Starlark rules to generate toolchain configs that can be used -with remote execution. See README.md under the root directory for the definition of toolchain configs. - -User facing rules in this repo are: -* `rbe_autoconfig` rule (see rbe_repo.bzl) is a repo rule that attempts to find toolchain configs that will work for your environment. If no toolchain configs are found, it pulls a container and generates them on demand. This rule also (optionally) can create the toolchain configs within your source tree. -* `docker_toolchain_autoconfig` rule (see docker_config.bzl) is a Starlark rule that builds a container and uses that to produce toolchain configs. It must be executed prior to running a build on Bazel and is only kept for legacy purposes. All new users should use `rbe_autoconfig`. - -Refer to the documentation in rbe_repo.bzl and docker_config.bzl for more details of how to execute these rules -to pick/produce toolchain configs. - -# Authentication - -If you are generating toolchain configs for the first time, you will probably encounter permission -issues while `docker` is trying to talk to `gcr.io`. - -If `gcloud` is installed, use `gcloud` as the Docker credential helper by following the instructions [here](https://cloud.google.com/sdk/gcloud/reference/auth/configure-docker). Otherwise, use `docker-credential-gcr` by following the instructions [here](https://github.com/GoogleCloudPlatform/docker-credential-gcr). diff --git a/rules/build_bazel_version.sh b/rules/build_bazel_version.sh deleted file mode 100644 index a5fdcf8b7..000000000 --- a/rules/build_bazel_version.sh +++ /dev/null @@ -1,33 +0,0 @@ -# Copyright 2017 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. - -#!/usr/bin/env bash -# Obtains from given URL the Bazel release source dist, and build Bazel. -# Script requires wget -# Bazel installation requires gcc, g++, jdk, python, zip / unzip -# $1: bazel_url -set -e -echo === Building from source a Bazel release version === - -bazel_url=$1 - -mkdir -p /src/bazel -cd /src/bazel/ -# Use -ca-certificate flag to explicitly tell wget where to look for certs. -wget $bazel_url --no-verbose --ca-certificate=/etc/ssl/certs/ca-certificates.crt -O /tmp/bazel-src.zip -mkdir -p /src/bazel/ -unzip /tmp/bazel-src.zip -d /src/bazel/ -cd /src/bazel && env EXTRA_BAZEL_ARGS="--host_javabase=@local_jdk//:jdk" bash ./compile.sh -mv /src/bazel/output/bazel /usr/local/bin/ -rm -drf /tmp/bazel-src.zip /src/bazel diff --git a/rules/cc-sample-project/BUILD.sample b/rules/cc-sample-project/BUILD.sample deleted file mode 100644 index 2c264aee7..000000000 --- a/rules/cc-sample-project/BUILD.sample +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2017 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. - -package(default_visibility = ["//visibility:public"]) - -licenses(["notice"]) # Apache 2.0 - -filegroup( - name = "srcs", - srcs = [ - "BUILD", - "test.cc", - ], -) - -cc_test( - name = "test", - srcs = ["test.cc"], -) diff --git a/rules/cc-sample-project/test.cc b/rules/cc-sample-project/test.cc deleted file mode 100644 index 9c6c027e0..000000000 --- a/rules/cc-sample-project/test.cc +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright 2017 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. - -#include - -int main() { - std::cout << "Hello test!" << std::endl; - return 0; -} - diff --git a/rules/docker_config.bzl b/rules/docker_config.bzl deleted file mode 100644 index 446068257..000000000 --- a/rules/docker_config.bzl +++ /dev/null @@ -1,542 +0,0 @@ -# Copyright 2017 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. - -"""Rules for generating toolchain configs for a Docker container. - -Exposes the docker_autoconfigure rule that does the following: -- Receive a base container as main input. Base container could have a desired - set of toolchains (i.e., a C compiler, C libraries, java, python, zip, and - other tools) installed. -- Optionally, install more debian packages in the base container (any packages - that might be needed by Bazel not installed in your container). -- Optionally, install a given Bazel version on the container. -- Extend the container to install sources for a project. -- Run a bazel command to build one or more targets from - remote repositories, inside the container. -- Copy toolchain configs (outputs of remote repo targets) produced - from the execution of Bazel inside the container to the host. - -Example: - - docker_toolchain_autoconfig( - name = "my-autoconfig-rule", - base = "@my_image//image:image.tar", - bazel_version = "0.10.0", - config_repos = ["local_config_cc", ""], - git_repo = "https://github.com/some_git_repo", - env = { - ... Dictionary of env variables to configure Bazel properly - for the container, see environments.bzl for examples. - }, - packages = [ - "package_1", - "package_2=version", - ], - # Any additional debian repos and keys needed to install packages above, - # not needed if no packages are installed. - additional_repos = [ - "deb http://deb.debian.org/debian jessie-backports main", - ], - keys = [ - "@some_gpg//file", - ], - ) - -Add to your WORKSPACE file the following: - - load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", "http_file") - - http_archive( - name = "bazel_toolchains", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/archive/.tar.gz", - "https://github.com/bazelbuild/bazel-toolchains/archive/.tar.gz", - ], - strip_prefix = "bazel-toolchains-", - sha256 = "", - ) - - load( - "@bazel_toolchains//repositories:repositories.bzl", - bazel_toolchains_repositories = "repositories", - ) - - bazel_toolchains_repositories() - - load( - "@io_bazel_rules_docker//repositories:repositories.bzl", - container_repositories = "repositories", - ) - - container_repositories() - - load( - "@io_bazel_rules_docker//container:container.bzl", - "container_pull", - ) - - # Pulls the my_image used as base for example above - container_pull( - name = "my_image", - digest = "sha256:", - registry = "", - repository = "", - ) - - # GPG file used by example above - http_file( - name = "some_gpg", - sha256 = "", - url = "", - ) - -For values of and other placeholders above, please see -the WORKSPACE file in this repo. - -To use the rule run: - - bazel build //:my-autoconfig-rule - -Once rule finishes running the file my-autoconfig-rule_output.tar -will be created with all toolchain configs generated by -"local_config_cc" and "". - -Known issues: - - - 'name' of rule must conform to docker image naming standards - - Rule cannot be placed in the BUILD file at the root of a project -""" - -load("@bazel_skylib//lib:dicts.bzl", "dicts") -load("@io_bazel_rules_docker//docker/toolchain_container:toolchain_container.bzl", "toolchain_container") -load( - "@io_bazel_rules_docker//container:container.bzl", - _container = "container", -) -load("@io_bazel_rules_docker//docker/util:run.bzl", _extract = "extract") - -# External folder is set to be deprecated, lets keep it here for easy -# refactoring -# https://github.com/bazelbuild/bazel/issues/1262 -_EXTERNAL_FOLDER_PREFIX = "external/" - -# Name of the current workspace -_WORKSPACE_NAME = "bazel_toolchains" - -_WORKSPACE_PREFIX = "@" + _WORKSPACE_NAME + "//" - -# Default cc project to use if no git_repo is provided. -_DEFAULT_AUTOCONFIG_PROJECT_PKG_TAR = _WORKSPACE_PREFIX + "rules:cc-sample-project-tar" - -# Filetype to restrict inputs -tar_filetype = [ - ".tar", - ".tar.xz", -] - -def _docker_toolchain_autoconfig_impl(ctx): - """Implementation for the docker_toolchain_autoconfig rule. - - Args: - ctx: context. See docker_toolchain_autoconfig below for details - of what this ctx must include - """ - bazel_config_dir = "/bazel-config" - project_repo_dir = "project_src" - output_dir = bazel_config_dir + "/autoconf_out" - name = ctx.attr.name - outputs_tar = ctx.outputs.output_tar.basename - - # Command to retrieve the project from github if requested. - clone_repo_cmd = "cd ." - if ctx.attr.git_repo: - clone_repo_cmd = ("cd " + bazel_config_dir + " && git clone " + - ctx.attr.git_repo + " " + project_repo_dir) - - repo_dir = bazel_config_dir + "/" + project_repo_dir - if ctx.attr.repo_pkg_tar: - # if package tar was used then the command should expand it - clone_repo_cmd = ("mkdir %s && tar -xf /%s -C %s " % - (repo_dir, ctx.file.repo_pkg_tar.basename, repo_dir)) - - # if mount_project was selected, we'll mount it using docker_run_flags - docker_run_flags = [""] - if ctx.attr.mount_project: - mount_project = ctx.attr.mount_project - mount_project = ctx.expand_make_variables("mount_project", mount_project, {}) - target = mount_project + ":" + repo_dir + ":ro" - docker_run_flags = ["-v", target] - - # Command to install custom Bazel version (if requested) - install_bazel_cmd = "cd ." - if ctx.attr.use_bazel_head: - # If use_bazel_head was requested, we clone the source code from github and compile - # it using the release version with "bazel build //src:bazel". - install_bazel_cmd = "/install_bazel_head.sh" - elif ctx.attr.bazel_version: - # If a specific Bazel and Bazel RC version is specified, install that version. - bazel_url = "https://releases.bazel.build/" + ctx.attr.bazel_version - if ctx.attr.bazel_rc_version: - bazel_url += ("/rc" + ctx.attr.bazel_rc_version + - "/bazel-" + ctx.attr.bazel_version + "rc" + - ctx.attr.bazel_rc_version) - else: - bazel_url += "/release/bazel-" + ctx.attr.bazel_version - if not ctx.attr.build_bazel_src: - bazel_url += "-installer-linux-x86_64.sh" - install_bazel_cmd = "/install_bazel_version.sh " + bazel_url - else: - bazel_url += "-dist.zip" - install_bazel_cmd = "/build_bazel_version.sh " + bazel_url - - # Command to recursively convert soft links to hard links in the config_repos - deref_symlinks_cmd = [] - for config_repo in ctx.attr.config_repos: - symlinks_cmd = ("find $(bazel info output_base)/" + - _EXTERNAL_FOLDER_PREFIX + config_repo + - " -type l -exec bash -c 'ln -f \"$(readlink -m \"$0\")\" \"$0\"' {} \;") - deref_symlinks_cmd.append(symlinks_cmd) - deref_symlinks_cmd = " && ".join(deref_symlinks_cmd) - - # Command to copy produced toolchain configs to a tar at the root - # of the container. - copy_cmd = ["mkdir " + output_dir] - for config_repo in ctx.attr.config_repos: - src_dir = "$(bazel info output_base)/" + _EXTERNAL_FOLDER_PREFIX + config_repo - copy_cmd.append("cp -dr " + src_dir + " " + output_dir) - copy_cmd.append("tar -cf /" + outputs_tar + " -C " + output_dir + "/ . ") - output_copy_cmd = " && ".join(copy_cmd) - - # Command to run autoconfigure targets. - bazel_cmd = "cd " + bazel_config_dir + "/" + project_repo_dir - if ctx.attr.use_default_project: - bazel_cmd += " && touch WORKSPACE && mv BUILD.sample BUILD" - - # For each config repo we run the target @//... - bazel_targets = "@" + "//... @".join(ctx.attr.config_repos) + "//..." - bazel_cmd += " && bazel build " + bazel_targets - - # Command to run to clean up after autoconfiguration. - # we start with "cd ." to make sure in case of failure everything after the - # ";" will be executed - clean_cmd = "cd . ; bazel clean" - if ctx.attr.use_default_project: - clean_cmd += " && rm WORKSPACE" - if ctx.attr.git_repo: - clean_cmd += " && cd " + bazel_config_dir + " && rm -drf " + project_repo_dir - - install_sh = ctx.actions.declare_file(name + "_install.sh") - ctx.actions.write( - output = install_sh, - content = "\n ".join([ - "set -ex", - "echo === Starting docker autoconfig ===", - ctx.attr.setup_cmd, - install_bazel_cmd, - "echo === Cloning / expand project repo ===", - clone_repo_cmd, - "echo === Running Bazel autoconfigure command ===", - bazel_cmd, - "echo === Copying outputs ===", - deref_symlinks_cmd, - output_copy_cmd, - "echo === Cleaning up ===", - clean_cmd, - ]), - ) - - # Include the repo_pkg_tar if needed - files = [install_sh] + ctx.files._installers - if ctx.attr.repo_pkg_tar: - files += [ctx.file.repo_pkg_tar] - - image_tar = ctx.actions.declare_file(name + ".tar") - - # TODO(nlopezgi): fix upstream issue that output_executable is required - load_image_sh_file = ctx.actions.declare_file(name + ".executable") - _container.image.implementation( - ctx, - files = files, - output_executable = load_image_sh_file, - output_tarball = image_tar, - workdir = bazel_config_dir, - ) - - # Commands to run script to create autoconf results, output stderr to log file - # add the log file to a tar file and append the output.tar to that same tar file - commands = [] - commands += ["/" + ctx.attr.name + "_install.sh 2> /" + ctx.attr.name + ".log"] - commands += ["tar -cf /extract.tar /" + ctx.attr.name + ".log"] - commands += [ - ("if [ -f /" + outputs_tar + " ]; " + - "then tar -rf /extract.tar /" + outputs_tar + "; fi"), - ] - - print(("\n== Docker autoconfig will run. ==\n" + - "To debug any errors run:\n" + - "> docker run -it {mount_flags} bash\n" + - "Where is the image id printed out by the " + - "{name}_extract.tar rule.\n" + - "Then run:\n>/{run_cmd}\n" + - "from inside the container.").format( - mount_flags = " ".join(docker_run_flags), - name = ctx.attr.name, - run_cmd = install_sh.basename, - )) - - extract_tar_file = ctx.actions.declare_file(name + "_extract.tar") - _extract.implementation( - ctx, - name = ctx.attr.name + "_extract", - image = image_tar, - docker_run_flags = docker_run_flags, - commands = commands, - extract_file = "/extract.tar", - script_file = ctx.actions.declare_file(ctx.attr.name + ".build"), - output_file = extract_tar_file, - ) - - # Extracts the two outputs produced by this rule (outputs.tar + log file) - # from the tar file extracted from the container in the rule above - ctx.actions.run_shell( - inputs = [extract_tar_file], - outputs = [ctx.outputs.output_tar, ctx.outputs.log], - command = ("tar -C %s -xf %s" % (ctx.outputs.output_tar.dirname, extract_tar_file.path)), - ) - -docker_toolchain_autoconfig_ = rule( - attrs = dicts.add(_container.image.attrs, { - "additional_repos": attr.string_list(), - "bazel_rc_version": attr.string(), - "bazel_version": attr.string(), - "config_repos": attr.string_list(default = ["local_config_cc"]), - "git_repo": attr.string(), - "build_bazel_src": attr.bool(default = False), - "keys": attr.string_list(), - "mount_project": attr.string(), - "packages": attr.string_list(), - "repo_pkg_tar": attr.label(allow_single_file = tar_filetype), - "setup_cmd": attr.string(default = "cd ."), - "test": attr.bool(default = True), - "use_bazel_head": attr.bool(default = False), - "use_default_project": attr.bool(default = False), - # TODO(nlopezgi): fix upstream attr declaration that is missing repo name - "_extract_image_id": attr.label( - default = Label("@io_bazel_rules_docker//contrib:extract_image_id"), - cfg = "host", - executable = True, - allow_files = True, - ), - "_extract_tpl": attr.label( - default = Label("@io_bazel_rules_docker//docker/util:extract.sh.tpl"), - allow_single_file = True, - ), - "_installers": attr.label(default = ":bazel_installers", allow_files = True), - }), - outputs = dicts.add(_container.image.outputs, { - "log": "%{name}.log", - "output_tar": "%{name}_outputs.tar", - }), - toolchains = ["@io_bazel_rules_docker//toolchains/docker:toolchain_type"], - implementation = _docker_toolchain_autoconfig_impl, -) - -# Attributes below are expected in ctx, but should not be provided -# in the BUILD file. -reserved_attrs = [ - "use_default_project", - "files", - "debs", - "repo_pkg_tar", - # all the attrs from docker_build we dont want users to set - "directory", - "tars", - "legacy_repository_naming", - "legacy_run_behavior", - "docker_run_flags", - "mode", - "symlinks", - "entrypoint", - "cmd", - "user", - "labels", - "ports", - "volumes", - "workdir", - "repository", - "label_files", - "label_file_strings", - "empty_files", - "build_layer", - "create_image_config", - "sha256", - "incremental_load_template", - "join_layers", - "extract_config", -] - -# Attrs expected in the BUILD rule -required_attrs = [ - "base", -] - -def docker_toolchain_autoconfig(**kwargs): - """Generate toolchain configs for a docker container. - - This rule produces a tar file with toolchain configs produced from the - execution of targets in skylark remote repositories. Typically, this rule is - used to produce toolchain configs for the local_config_cc repository. - This repo (as well as others, depending on the project) contains generated - toolchain configs that Bazel uses to properly use a toolchain. For instance, - the local_config_cc repo generates a cc_toolchain rule. - - The toolchain configs that this rule produces, can be used to, for - instance, use a remote execution service that runs actions inside docker - containers. - - All the toolchain configs published in the bazel-toolchains - repo (https://github.com/bazelbuild/bazel-toolchains/) have been produced - using this rule. - - This rule is implemented by extending the container_image rule in - https://github.com/bazelbuild/rules_docker. The rule installs debs packages - to run bazel (using the package manager rules offered by - https://github.com/GoogleContainerTools/base-images-docker). - The rule creates the container with a command that pulls a repo from github, - and runs bazel build for a series of remote repos. Files generated in these - repos are copied to a mount point inside the Bazel output tree. - - Args: - **kwargs: - Required Args - name: A unique name for this rule. - base: Docker image base - optionally with all tools pre-installed - for which a configuration will be generated. Packages can also - be installed by listing them in the 'packages' attriute. - Default Args: - config_repos: a list of remote repositories. Autoconfig will run - targets in each of these remote repositories and copy all - contents to the mount point. - env: Dictionary of env variables for Bazel / project specific - autoconfigure - git_repo: A git repo with the sources for the project to be used for - autoconfigure. If no git_repo is passed, autoconfig will run - with a sample c++ project. - mount_project: mounts a directory passed in an absolute path as the - project to use for autoconfig. Cannot be used if - git_repo is passed. Make variable substitution is - enabled, so use: - mount_project = "$(mount_project)", - and then run: - bazel build --define mount_project=$(realpath .) - from the root of the project to mount it as the - project to use for autoconfig. - bazel_version: a specific version of Bazel used to generate toolchain - configs. Format: x.x.x - bazel_rc_version: a specific version of Bazel release candidate used to - generate toolchain configs. Input "2" if you would like to use rc2. - use_bazel_head = Download bazel head from github, compile it and use it - to run autoconfigure targets. - build_bazel_src: Default False, if set to True Bazel will be built from - source as opposed to installed using pre-compiled binaries. - setup_cmd: a customized command that will run as the very first command - inside the docker container. - packages: list of packages to fetch and install in the base image. - additional_repos: list of additional debian package repos to use, - in sources.list format. - keys: list of additional gpg keys to use while downloading packages. - test: a boolean which specifies whether a test target for this - docker_toolchain_autoconfig will be added. - If True, a test target with name {name}_test will be added. - The test will build this docker_toolchain_autoconfig target, run the - output script, and check the toolchain configs for the c++ auto - generated config exist. - """ - for reserved in reserved_attrs: - if reserved in kwargs: - fail("reserved for internal use by docker_toolchain_autoconfig macro", attr = reserved) - - for required in required_attrs: - if required not in kwargs: - fail("required for docker_toolchain_autoconfig", attr = required) - - # Input validations - use_bazel_head = "use_bazel_head" in kwargs and kwargs["use_bazel_head"] - build_bazel_src = "build_bazel_src" in kwargs and kwargs["build_bazel_src"] - if use_bazel_head and ("bazel_version" in kwargs or "bazel_rc_version" in kwargs): - fail("Only one of use_bazel_head or a combination of bazel_version and" + - "bazel_rc_version can be set at a time.") - if use_bazel_head and build_bazel_src: - fail("use_bazel_head cannot be set when build_bazel_src is set to True.") - if build_bazel_src and "bazel_rc_version" in kwargs: - fail("bazel_rc_version cannot be set when build_bazel_src is set to True.") - if build_bazel_src and not "bazel_version" in kwargs: - fail("bazel_version must be set when build_bazel_src is set to True.") - - packages_is_empty = "packages" not in kwargs or kwargs["packages"] == [] - - if packages_is_empty and "additional_repos" in kwargs: - fail("'additional_repos' can only be specified when 'packages' is not empty.") - if packages_is_empty and "keys" in kwargs: - fail("'keys' can only be specified when 'packages' is not empty.") - - if "git_repo" in kwargs and "mount_project" in kwargs: - fail("'git_repo' cannot be used with 'mount_project'.") - - # If a git_repo or mount_project was not provided - # use the default autoconfig project - if "git_repo" not in kwargs and "mount_project" not in kwargs: - kwargs["repo_pkg_tar"] = _DEFAULT_AUTOCONFIG_PROJECT_PKG_TAR - kwargs["use_default_project"] = True - kwargs["files"] = [ - _WORKSPACE_PREFIX + "rules:install_bazel_head.sh", - _WORKSPACE_PREFIX + "rules:install_bazel_version.sh", - _WORKSPACE_PREFIX + "rules:build_bazel_version.sh", - ] - - # Do not install packags if 'packages' is not specified or is an empty list. - if not packages_is_empty: - # "additional_repos" and "keys" are optional for docker_toolchain_autoconfig, - # but required for toolchain_container". Use empty lists as placeholder. - if "additional_repos" not in kwargs: - kwargs["additional_repos"] = [] - if "keys" not in kwargs: - kwargs["keys"] = [] - - # Install packages in the base image. - toolchain_container( - name = kwargs["name"] + "_image", - base = kwargs["base"], - packages = kwargs["packages"], - additional_repos = kwargs["additional_repos"], - keys = kwargs["keys"], - ) - - # Use the image with packages installed as the new base for autoconfiguring. - kwargs["base"] = ":" + kwargs["name"] + "_image.tar" - - if "test" in kwargs and kwargs["test"] == True: - # Create a test target for the current docker_toolchain_autoconfig target, - # which builds this docker_toolchain_autoconfig target, runs the output - # script, and checks the toolchain configs for the c++ auto generated config - # exist. - native.sh_test( - name = kwargs["name"] + "_test", - size = "medium", - timeout = "long", - srcs = ["@bazel_toolchains//tests/config:autoconfig_test.sh"], - data = [":" + kwargs["name"] + "_outputs.tar"], - ) - - docker_toolchain_autoconfig_(**kwargs) diff --git a/rules/environments.bzl b/rules/environments.bzl deleted file mode 100644 index 143ba1faf..000000000 --- a/rules/environments.bzl +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright 2017 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. -"""Default dictionaries of env variables.""" - -def gcc_env(): - return { - "ABI_LIBC_VERSION": "glibc_2.19", - "ABI_VERSION": "gcc", - "BAZEL_COMPILER": "gcc", - "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", - "BAZEL_TARGET_CPU": "k8", - "BAZEL_TARGET_LIBC": "glibc_2.19", - "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", - "CC_TOOLCHAIN_NAME": "linux_gnu_x86", - } - -def clang_env(): - return { - "ABI_LIBC_VERSION": "glibc_2.19", - "ABI_VERSION": "clang", - "BAZEL_COMPILER": "clang", - "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", - "BAZEL_TARGET_CPU": "k8", - "BAZEL_TARGET_LIBC": "glibc_2.19", - "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", - "CC": "clang", - "CC_TOOLCHAIN_NAME": "linux_gnu_x86", - } - -def debian8_clang_default_packages(): - return [ - "bazel", - "ca-certificates-java=20161107'*'", - "curl", - "git", - "openjdk-8-jdk-headless", - "openjdk-8-jre-headless", - "python-dev", - "unzip", - "wget", - "zip", - ] - -def debian8_clang_default_repos(): - return [ - "deb http://deb.debian.org/debian jessie-backports main", - bazel_repo(), - ] - -def debian8_clang_default_keys(): - return bazel_key() - -def ubuntu16_04_clang_default_packages(): - return [ - "bazel", - "ca-certificates-java", - "curl", - "git", - "openjdk-8-jdk-headless", - "openjdk-8-jre-headless", - "python-dev", - "unzip", - "wget", - "zip", - ] - -def ubuntu16_04_clang_default_repos(): - return [ - bazel_repo(), - ] - -def ubuntu16_04_clang_default_keys(): - return bazel_key() - -def bazel_key(): - return [ - "@bazel_gpg//file", - ] - -def bazel_repo(): - return "deb [arch=amd64] http://storage.googleapis.com/bazel-apt stable jdk1.8" diff --git a/rules/gcs.bzl b/rules/gcs.bzl deleted file mode 100644 index d354e0b27..000000000 --- a/rules/gcs.bzl +++ /dev/null @@ -1,97 +0,0 @@ -# Copyright 2017 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. - -"""Repository rule for pulling a file from GCS bucket. - -The rule uses gsutil tool installed in the system to download a file from a GCS bucket, -and make it available for other rules to use (e.g. container_image rule). -To install gsutil, please refer to: - https://cloud.google.com/storage/docs/gsutil -You need to have read access to the GCS bucket. -""" - -_GCS_FILE_BUILD = """ -package(default_visibility = ["//visibility:public"]) -filegroup( - name = "file", - srcs = ["{}"], -) -""" - -def _gcs_file_impl(ctx): - """Implementation of the gcs_file rule.""" - repo_root = ctx.path(".") - forbidden_files = [ - repo_root, - ctx.path("WORKSPACE"), - ctx.path("BUILD"), - ctx.path("BUILD.bazel"), - ctx.path("file/BUILD"), - ctx.path("file/BUILD.bazel"), - ] - downloaded_file_path = ctx.attr.downloaded_file_path or ctx.attr.file - download_path = ctx.path("file/" + downloaded_file_path) - if download_path in forbidden_files or not str(download_path).startswith(str(repo_root)): - fail("'%s' cannot be used as downloaded_file_path in gcs_file" % ctx.attr.downloaded_file_path) - - # Add a top-level BUILD file to export all the downloaded files. - ctx.file("file/BUILD", _GCS_FILE_BUILD.format(downloaded_file_path)) - - # Create a bash script from a template. - ctx.template( - "gsutil_cp_and_validate.sh", - Label("@bazel_toolchains//rules:gsutil_cp_and_validate.sh.tpl"), - { - "%{BUCKET}": ctx.attr.bucket, - "%{DOWNLOAD_PATH}": str(download_path), - "%{FILE}": ctx.attr.file, - "%{SHA256}": ctx.attr.sha256, - }, - ) - - gsutil_cp_and_validate_result = ctx.execute(["bash", "gsutil_cp_and_validate.sh"]) - if gsutil_cp_and_validate_result.return_code == 255: - fail("SHA256 of file {} from bucket {} does not match given SHA256: {} {}".format( - ctx.attr.file, - ctx.attr.bucket, - gsutil_cp_and_validate_result.stdout, - gsutil_cp_and_validate_result.stderr, - )) - elif gsutil_cp_and_validate_result.return_code != 0: - fail("gsutil cp command failed: %s" % (gsutil_cp_and_validate_result.stderr)) - - rm_result = ctx.execute(["rm", "gsutil_cp_and_validate.sh"]) - if rm_result.return_code: - fail("Failed to remove temporary file: %s" % rm_result.stderr) - -gcs_file = repository_rule( - attrs = { - "bucket": attr.string( - mandatory = True, - doc = "The GCS bucket which contains the file.", - ), - "downloaded_file_path": attr.string( - doc = "Path assigned to the file downloaded.", - ), - "file": attr.string( - mandatory = True, - doc = "The file which we are downloading.", - ), - "sha256": attr.string( - mandatory = True, - doc = "The expected SHA-256 of the file downloaded.", - ), - }, - implementation = _gcs_file_impl, -) diff --git a/rules/gsutil_cp_and_validate.sh.tpl b/rules/gsutil_cp_and_validate.sh.tpl deleted file mode 100644 index df022e604..000000000 --- a/rules/gsutil_cp_and_validate.sh.tpl +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2017 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. - -#!/bin/bash -# Template script to download GCS file and validate its digest -set -e - -echo "Downloading %{BUCKET}/%{FILE} to %{DOWNLOAD_PATH}" -gsutil cp %{BUCKET}/%{FILE} %{DOWNLOAD_PATH} -digest=$(sha256sum %{DOWNLOAD_PATH} | head -c 64) -if [ $digest != %{SHA256} ]; then - echo "actual digest: $digest, expected: %{SHA256}" - exit -1 -else - exit 0 -fi diff --git a/rules/install_bazel_head.sh b/rules/install_bazel_head.sh deleted file mode 100644 index b519c0c7f..000000000 --- a/rules/install_bazel_head.sh +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2017 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. - -#!/usr/bin/env bash -# Checks out from github the bazel project and builds it using bazel -# Script requires git and bazel present in path -set -e -echo === Installing Bazel from head === - -mkdir -p /src/bazel -cd /src/bazel/ -git clone https://github.com/bazelbuild/bazel.git -cd bazel -bazel build //src:bazel --spawn_strategy=standalone -cp /src/bazel/bazel/bazel-bin/src/bazel /usr/bin/bazel -rm -rf /src/bazel diff --git a/rules/install_bazel_version.sh b/rules/install_bazel_version.sh deleted file mode 100644 index de7967355..000000000 --- a/rules/install_bazel_version.sh +++ /dev/null @@ -1,30 +0,0 @@ -# Copyright 2017 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. - -#!/usr/bin/env bash -# Obtains from given URL the Bazel release/rc installer, and installs Bazel. -# Script requires wget -# $1: bazel_url -set -e -echo === Installing a Bazel release/rc version === - -bazel_url=$1 - -mkdir -p /src/bazel -cd /src/bazel/ -# Use -ca-certificate flag to explicitly tell wget where to look for certs. -wget $bazel_url --no-verbose --ca-certificate=/etc/ssl/certs/ca-certificates.crt -O /tmp/bazel-installer.sh -chmod +x /tmp/bazel-installer.sh -/tmp/bazel-installer.sh -rm -f /tmp/bazel-installer.sh diff --git a/rules/rbe_repo.bzl b/rules/rbe_repo.bzl deleted file mode 100644 index 1b3bd5658..000000000 --- a/rules/rbe_repo.bzl +++ /dev/null @@ -1,1254 +0,0 @@ -# Copyright 2017 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. - -"""Repository Rules to pick/generate toolchain configs for a container image. - -The toolchain configs (+ platform) produced/selected by this rule can be used -to, e.g., run a remote build in which remote actions will run inside a -container image. - -Exposes the rbe_autoconfig macro that encapsulates all functionality to -create and use toolchain configs. The main use cases for this rule are - 1. If you use the rbe-ubuntu 16_04 image in your RBE builds: This macro - enables automatic selection of toolchain configs for your RBE build. - As long as you are using a release version of Bazel and have your pin - to the bazel-toolchains repo up to date, this rule should "just work" - to select toolchain configs that have been generated for you before hand. - More details about the rbe-ubuntu 16_04 image: https://console.cloud.google.com/marketplace/details/google/rbe-ubuntu16-04 - - 2. If you use a container that extends from the rbe-ubuntu 16_04 image - in your RBE builds: This macro allows you to define which version of - the rbe-ubuntu 16_04 image you built yours from, and then it will either - pick toolchain configs in the bazel-toolchains repo that work for you, - or will generate them on the fly by pulling the rbe-ubuntu 16_04 - container you used as base and running some commands inside the container. - The main reason for having to generate a toolchain config (as opposed to - using one that is checked-in the bazel-toolchains repo) is due to your - base rbe-ubuntu 16_04 image not being compatible with the latest one, - for the given version of Bazel you are using. - If you want to make sure you can use checked-in configs, you should - rebuild your container, using the latest rbe-ubuntu 16_04 image as base, - whenever you udpate Bazel versions. - - 3. If you use a custom container that does not extend from the rbe-ubuntu 16_04 - image (or your project has custom configure like repo rules, or you - need to run your configure like repo rules with different environment - settings): - - 3.1. If you don't mind having to generate configs each time you run Bazel from - a clean client, then this rule can do just that, by simply specifying the - relevant information about which container to use. - - 3.2. If you don't want to generate configs every time, you can use - rbe_autoconfig to setup a "toolchain_config_repo" from which anyone - that builds on RBE with your container can pull pre-generated configs from. - To do this, rbe_autoconfig allows specification of a 'toolchain_config_suite_spec'. - A 'toolchain_config_suite_spec' specifies all details of an external repo - that will be used to both export to and read from toolchain configs. - Details for setting up a "toolchain_config_repo" are below. - - More about configure like repo rules: https://docs.bazel.build/versions/master/remote-execution-rules.html#managing-configure-style-workspace-rules - -If rbe_autoconfig needs to generate toolchain configs, the process is as follows: -- Pull the selected toolchain container image (using 'docker pull'). -- Start up a container using the pulled image, copying either a small sample - project or the current project (if output_base is set). -- Install the current version of Bazel (one currently running) on the container - (or the one passed in with optional attr). Container must have tools required to install - and run Bazel (i.e., a jdk, a C/C++ compiler, a python interpreter). -- Run a bazel command to build the local_config_cc remote repository inside the container. -- Extract local_config_cc produced files (inside the container) to the produced - remote repository. -- Produce a default BUILD file with platform and toolchain targets to use the container - in a remote build. -- Optionally copies the local_config_cc produced files to the project srcs under the - given output_base directory. - -For use case 1. If you use the rbe-ubuntu 16_04 image in your RBE builds, -add to your WORKSPACE file the following: - - load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive", "http_file") - - http_archive( - name = "bazel_toolchains", - urls = [ - "https://mirror.bazel.build/github.com/bazelbuild/bazel-toolchains/archive/.tar.gz", - "https://github.com/bazelbuild/bazel-toolchains/archive/.tar.gz", - ], - strip_prefix = "bazel-toolchains-", - sha256 = "", - ) - - load( - "@bazel_toolchains//repositories:repositories.bzl", - bazel_toolchains_repositories = "repositories", - ) - - bazel_toolchains_repositories() - - load("@bazel_toolchains//rules:rbe_repo.bzl", "rbe_autoconfig") - - # This is the simplest form of calling rbe_autoconfig. - # See below other examples, but your WORKSPACE should likely - # only need one single rbe_autoconfig target - rbe_autoconfig( - name = "rbe_default", - # If you want your rbe_autoconfig rule to never pull a container - # and fail fast if toolchain configs are not available, uncomment the - # following line: - # use_checked_in_confs = "Force", - ) - -For the recommended value of please see -https://releases.bazel.build/bazel-toolchains.html - -For use case 2. If you use a container that extends from the rbe-ubuntu 16_04 -image, add to your WORKSPACE file the following: - - - - rbe_autoconfig( - name = "rbe_default", - base_container_digest = - registry = "gcr.io", - repository = "your-project/your-image-name", - # Digest is recommended for any use case other than testing. - digest = "sha256:deadbeef", - ) - -For use case 3.1. If you are using a custom container, and don't mind -having to generate configs each time, add to your WORKSPACE file -the following: - - - - rbe_autoconfig( - name = "rbe_your_custom_container", - registry = "gcr.io", - repository = "your-project/your-image-name", - # Digest is recommended for any use case other than testing. - digest = "sha256:deadbeef", - ) - - -For use case 3.2. If you are using a custom container, and don't -want to generate configs every time. The setup is as follows: - -Define a repo (can be the same where you host the sources you want -to build on RBE or a separate one) which will host your published -toolchain configs. We call this the "toolchain-config-repo" in the -below - -Define a 'toolchain_config_suite_spec', which specifies a container -(repo + registry) and an output_base, the relative path, within -the toolchain-config-repo where toolchain configs will be published to. -You can only have one 'toolchain_config_suite_spec' per container for which -you will be producing toolchain configs for, but multiple versions of the same -container (i.e., with different sha / tags) can share the same -'toolchain_config_suite_spec'. -Also, the same 'toolchain_config_suite_spec' can also be used to host -multiple toolchain configs that vary in environment variables, and -additional config repos (i.e., repos corresponding to configure like -repository rules) that are needed for different types of builds. For example, -a configuration for msan (which needs specific env variables) and one for -default C++ builds can share an output_base. -Lastly, a 'toolchain_config_suite_spec' will store configs for several -versions of Bazel (any that you specify). - -For detailed instructions of how to set up a 'toolchain_config_suite_spec' -please see //rules/rbe_repo/toolchain_config_suite_spec.bzl - -Once you have set up the toolchain_config_suite_spec you can add to your -WORKSPACE the following: - - - - load("//path/to_your/toolchain_config_suite_spec.bzl", "your_toolchain_config_suite_spec_struct") - - rbe_autoconfig( - name = "rbe_your_custom_toolchain_config_suite_spec", - export_configs = True, - toolchain_config_suite_spec = your_toolchain_config_suite_spec_struct, - ) - -You can then run: - -RBE_AUTOCONF_ROOT=$(pwd) bazel build @rbe_your_custom_toolchain_config_suite_spec//... - -This will create the toolchain configs in the 'output_base' defined in the -'toolchain_config_suite_spec'. It will generate configs for the current version -of Bazel you are running with (overridable via attr). -This will also (abusing Bazel hermeticity principles) modify the versions.bzl -file in the 'output_base'. This is so that subsequent executions of the target -(by you, or by any of your users after you have checked-in these generated files) -will be able to directly use them without having to generate them again. -You should check-in your repo these changes so that the generated configs -are available to all other users of your repo. - -For users of your 'toolchain_config_suite_spec' all that they need to do is -add to their WORKSPACE: - - - - load("//path/to_your/toolchain_config_suite_spec.bzl", "your_toolchain_config_suite_spec_struct") - - rbe_autoconfig( - name = "rbe_your_custom_toolchain_config_suite_spec", - toolchain_config_suite_spec = your_toolchain_config_suite_spec_struct, - ) - -And that's it! They should be able to get checked-in configs every time, -as long as, whenever there is a new Bazel needed for RBE builds: - - You, the owner of the 'toolchain_config_suite_spec' generates and - publishes the new toolchain configs to your repo. This is needed because - new Bazel versions can only be guaranteed to work with toolchain - configs that were generated for the specific version of Bazel used. - - The users of your 'toolchain_config_suite_spec' update their pin to - your repo. - -If you want to create (more) different sets of toolchain configurations (a toolchain_config_spec) -with a different set of env variables, you can do so by reusing the -'toolchain_config_suite_spec', and providing a distinct 'toolchain_config_spec_name'. Example: - -rbe_autoconfig( - name = "rbe_custom_env2", - env = {}, - export_configs = True, - toolchain_config_spec_name = "", - toolchain_config_suite_spec = your_toolchain_config_suite_spec_struct, -) - -rbe_autoconfig( - name = "rbe_custom_env2", - env = {}, - export_configs = True, - toolchain_config_spec_name = "", - toolchain_config_suite_spec = your_toolchain_config_suite_spec_struct, -) - -As of Bazel 0.29.0, platforms support exec_properties instead of the deprecated -remote_execution_properties to configure remote execution properties. The new -field is a string->string dictionary rather than a proto serialized as a -string. - -rbe_autoconfig now has a field use_legacy_platform_definition, which for -backward compatibility reasons is set by default to True. Setting it to False -causes the underlying platform to be configured using the new exec_properties -field. - -Furthermore, rbe_autoconfig itself also has an exec_properties field. Any -values set there are used in configuring the underlying platform. This field -only works if use_legacy_platform_definition is set to False. - -Note that the container image cannot be set in rbe_autoconfig via the -exec_properties field. - -Here is an example of an rbe_autoconfig that configures its underlying platform -to set the size of the shared memory partition for the docker container to 128 -megabytes. - -load("@bazel_toolchains//rules/exec_properties:exec_properties.bzl", "create_rbe_exec_properties_dict") - -rbe_autoconfig( - name = "rbe_default", - use_legacy_platform_definition = False, - exec_properties = create_rbe_exec_properties_dict(docker_shm_size = "128m"), -) - -Note the use of create_rbe_exec_properties_dict. This is a Bazel macro that -makes it convenient to create the dicts used in exec_properties. You should -always prefer to use it over composing the dict manually. - -Additionally, there are standard execution property dicts that you may want to -use. These standard dicts should always be preferred if defined. These standard -dicts are defined in a local repo that can be set up via a Bazel macro called -rbe_exec_properties. The following example has rbe_autoconfig create an -underlying platform that allows network access to the remote execution worker. - -load("@bazel_toolchains//rules/exec_properties:exec_properties.bzl", "rbe_exec_properties") - -rbe_exec_properties( - name = "exec_properties", -) - -load("@exec_properties//:constants.bzl", "NETWORK_ON") - -rbe_autoconfig( - name = "rbe_default", - use_legacy_platform_definition = False, - exec_properties = NETWORK_ON, -) - -For more information on create_rbe_exec_properties_dict, rbe_exec_properties -and other related Bazel macros, see https://github.com/bazelbuild/bazel-toolchains/tree/master/rules/exec_properties - -NOTES: - -READ CAREFULLY THROUGH THESE NOTES, NO MATTER YOUR USE CASE: - -NOTE 1: SETTING TOOLCHAIN FLAGS - -This is not an up to date source for flags, and just provides general guidance -please see //bazelrc/.latest.bazelrc for the most up to date flags. - -Once you have added the rbe_autoconfig rule to your WORKSPACE, you will -need to set up toolchain flags that select the appropriate toolchain configs. -The flags below, show an sample of those flags, which was last reviewed -with Bazel 0.25.0 and for a rbe_autoconfig rule with name 'rbe_default'. -If you are using a later version of Bazel or your rbe_autoconfig target -has a different name, please adjust accordingly. - - bazel build ... \ - --crosstool_top=@rbe_default//cc:toolchain \ - --host_javabase=@rbe_default//java:jdk \ - --javabase=@rbe_default//java:jdk \ - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 \ - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 \ - --extra_execution_platforms=@rbe_default//config:platform \ - --host_platform=@rbe_default//config:platform \ - --platforms=@rbe_default//config:platform \ - --extra_toolchains=@rbe_default//config:cc-toolchain \ - -NOTE 2: WHEN DOES THIS RULE PULL A CONTAINER - -Most users of rbe_autoconfig do not expect their target to pull a container. -If your rbe_autoconfig rule nevertheless pulls a container its because it -could not find checked-in configs that match: -1- The Bazel version you are currently using -2- The container you selected (if you are not setting base_container_digest) -3- The environment or config repos you requested - -The simplest fix for 1 is to update your pin to the bazel-toolchains repo (and -to the source of your custom 'toolchain_config_suite_spec'). If that does not -fix the issue, you can try to use an older toolchain cofig by passing -an older version in the bazel_version 'attr' (which may or may not work with -the current version you are running). You should also contact the owners of -bazel-toolchains (or the custom 'toolchain_config_suite_spec' repo) to have them -publish configs for any new version if they have not done so. - -The simplest fix for 2, is to rebuild your custom container using as base -the latest version of the base_container_digest. If that does not work, contact -the owners of the bazel-toolchains repo (i.e., create an issue in this repo) -or the owners of custom 'toolchain_config_suite_spec' repo if you are using one. - -The only possible fix for 3, if you want this custom config spec to be supported -with checked-in configs, is to contact the owners of the bazel-toolchains repo -(or the custom 'toolchain_config_suite_spec' repo), to ask them to add this spec -to their WORKSPACE and generate configs for it. - -NOTE 3: USE OF PROJECT ROOT - -When this rule needs to export toolchain configs, or when it needs -to generate configs for custom config repos (i.e., corresponding to -configure like repo rules needed in your RBE build), This rule depends -on the value of the environment variable "RBEAUTOCONF_ROOT". - -This env var should be set to point to the absolute path root of your project. -Use the full absolute path to the project root (i.e., no '~', '../', or -other special chars). - -NOTE 4: PREREQUISITES FOR RUNNING THIS RULE - -If this rule needs to generate configs, it expects the following -utilities to be installed and available on the PATH: - - docker - - tar - - bash utilities (e.g., cp, mv, rm, etc) - - docker authentication to pull the desired container should be set up - (rbe-ubuntu16-04 does not require any auth setup currently). - -NOTE 5: HERMETICITY AND THIS RULE - -Note this is a very not hermetic repository rule that can actually change the -contents of your project sources. While this is generally not recommended by -Bazel, its the only reasonable way to get a rule that can produce valid -toolchains / platforms that need to be made available to Bazel before execution -of any build actions, AND at the same time, make them available to other -users so they do not need to be regenerated again. This can be done, safely, -to a certain extent, because these containers are pulled and dealt with by -SHA, all the outputs produced should be completely independent of where they -were built and can be leveraged by all users of a container. - -NOTE 6: KNOWN LIMITATIONS - - - This rule can only run on Linux or Windows if it needs to generate configs. - - This rule uses Bazelisk to run Bazel inside the given container. - The container, thus, must be able to execute the Bazelisk binary - (i.e., Linux or Windows based container must be capable of running - the respective linux-amd or windows-amd releases from - https://github.com/bazelbuild/bazelisk/releases) - - If using export_configs, and you have multiple rbe_autoconfig targets - pointing to the same toolchain_config_suite_spec, these rules should not - be executed together in the same bazel command, as they all depend on - reading/writing to the same versions.bzl file. - - This rule cannot generate configs if: 1) it needs to pull additional - config repos and 2) the project's WORKSPACE contains local_repository - rules pointing to directories above the project root. -""" - -load( - "//configs/dependency-tracking:ubuntu1604.bzl", - BAZEL_LATEST = "bazel", -) -load( - "//rules/rbe_repo:build_gen.bzl", - "create_alias_platform", - "create_config_aliases", - "create_export_platform", - "create_external_repo_platform", - "create_java_runtime", -) -load( - "//rules/rbe_repo:checked_in.bzl", - "CHECKED_IN_CONFS_FORCE", - "CHECKED_IN_CONFS_TRY", - "CHECKED_IN_CONFS_VALUES", - "validateUseOfCheckedInConfigs", -) -load( - "//rules/rbe_repo:container.bzl", - "get_java_home", - "get_java_version", - "pull_container_needed", - "pull_image", - "run_and_extract", -) -load( - "//rules/rbe_repo:outputs.bzl", - "create_configs_tar", - "create_versions_file", - "expand_outputs", -) -load( - "//rules/rbe_repo:toolchain_config_suite_spec.bzl", - "config_to_string_lists", - "default_toolchain_config_suite_spec", - "validate_toolchain_config_suite_spec", -) -load( - "//rules/rbe_repo:util.bzl", - "AUTOCONF_ROOT", - "DOCKER_PATH", - "copy_to_test_dir", - "os_family", - "print_exec_results", - "resolve_image_name", - "resolve_project_root", - "resolve_rbe_original_image_name", - "validate_host", -) -load( - "//rules/rbe_repo:version_check.bzl", - "extract_version_number", - "parse_rc", -) - -# Version to fallback to if not provided explicitly and local is non-release version. -_BAZEL_VERSION_FALLBACK = BAZEL_LATEST - -_CONFIG_REPOS = ["local_config_cc"] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC_NAME = "default_toolchain_config_spec_name" - -_EXEC_COMPAT_WITH = { - "Linux": [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - "@bazel_tools//tools/cpp:clang", - ], - "Windows": [ - "@bazel_tools//platforms:windows", - "@bazel_tools//platforms:x86_64", - ], -} -_TARGET_COMPAT_WITH = { - "Linux": [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - "Windows": [ - "@bazel_tools//platforms:windows", - "@bazel_tools//platforms:x86_64", - ], -} - -def _rbe_autoconfig_impl(ctx): - """Core implementation of _rbe_autoconfig repository rule.""" - - bazel_version_debug = "Bazel %s" % ctx.attr.bazel_version - if ctx.attr.bazel_rc_version: - bazel_version_debug += " rc%s" % ctx.attr.bazel_rc_version - print("%s is used in %s." % (bazel_version_debug, ctx.attr.name)) - - if ctx.attr.use_checked_in_confs == CHECKED_IN_CONFS_FORCE and not ctx.attr.config_version: - fail(("Target '{name}' failed: use_checked_in_confs was set to '{force}' " + - "but no checked-in configs were found. " + - "Please check your pin to '@{toolchain_config_suite_spec_repo_name}' is up " + - "to date, and that you are using a release version of " + - "Bazel. You can also explicitly set the version of Bazel to " + - "an older version in the '{name}' rbe_autoconfig target " + - "which may or may not work with the version you are currently " + - "running with.").format( - name = ctx.attr.name, - force = CHECKED_IN_CONFS_FORCE, - toolchain_config_suite_spec_repo_name = ctx.attr.toolchain_config_suite_spec["repo_name"], - )) - - name = ctx.attr.name - image_name = resolve_image_name(ctx) - docker_tool_path = None - - # Resolve default constraints if none set - target_compatible_with = ctx.attr.target_compatible_with - if not target_compatible_with: - target_compatible_with = _TARGET_COMPAT_WITH[os_family(ctx)] - - exec_compatible_with = ctx.attr.exec_compatible_with - if not exec_compatible_with: - exec_compatible_with = _EXEC_COMPAT_WITH[os_family(ctx)] - - # Resolve the paths to copy srcs to the container and to - # export configs. - mount_project_root, export_project_root, use_default_project = resolve_project_root(ctx) - - # Check if pulling a container will be needed and pull it if so - digest = ctx.attr.digest - if pull_container_needed(ctx): - ctx.report_progress("validating host tools") - docker_tool_path = validate_host(ctx) - - # Pull the image using 'docker pull' - pull_image(ctx, docker_tool_path, image_name) - - # If tag is specified instead of digest, resolve it to digest in the - # image_name as it will be used later on in the platform targets. - if ctx.attr.tag: - result = ctx.execute([docker_tool_path, "inspect", "--format={{index .RepoDigests 0}}", image_name]) - print_exec_results("Resolve image digest", result, fail_on_error = True) - image_name = result.stdout.splitlines()[0] - digest = image_name.split("@")[1] - print("Image with given tag `%s` is resolved to '%s', digest is '%s'" % - (ctx.attr.tag, image_name, digest)) - - # Get the value of JAVA_HOME to set in the produced - # java_runtime - java_home = None - java_version = None - if ctx.attr.create_java_configs: - java_home = get_java_home(ctx, docker_tool_path, image_name) - java_version = get_java_version(ctx, docker_tool_path, image_name, java_home) - if java_home: - create_java_runtime(ctx, java_home, java_version) - - toolchain_config_spec_name = ctx.attr.toolchain_config_spec_name - if ctx.attr.config_version: - # If we found a config we pass it to the toolchain_config_spec_name so when - # we produce platform BUILD file we can use it. - toolchain_config_spec_name = ctx.attr.config_version - else: - # If no config_version was found, generate configs - - config_repos = [] - if ctx.attr.create_cc_configs: - config_repos.extend(_CONFIG_REPOS) - if ctx.attr.config_repos: - config_repos.extend(ctx.attr.config_repos) - if config_repos: - # run the container and extract the autoconf directory - run_and_extract( - ctx, - bazel_version = ctx.attr.bazel_version, - bazel_rc_version = ctx.attr.bazel_rc_version, - config_repos = config_repos, - docker_tool_path = docker_tool_path, - image_name = image_name, - project_root = mount_project_root, - use_default_project = use_default_project, - ) - - if ctx.attr.export_configs: - ctx.report_progress("expanding outputs") - - # If the user requested exporting configs and did not set a toolchain_config_spec_name lets pick the default - if not toolchain_config_spec_name: - toolchain_config_spec_name = ctx.attr.toolchain_config_suite_spec["default_toolchain_config_spec"] - - # Create a default BUILD file with the platform + toolchain targets that - # will work with RBE with the produced toolchain (to be exported to - # output_dir) - ctx.report_progress("creating export platform") - create_export_platform( - ctx, - exec_properties = ctx.attr.internal_exec_properties, - exec_compatible_with = exec_compatible_with, - target_compatible_with = target_compatible_with, - image_name = resolve_rbe_original_image_name(ctx, image_name), - name = name, - toolchain_config_spec_name = toolchain_config_spec_name, - use_legacy_platform_definition = ctx.attr.use_legacy_platform_definition, - ) - - # Create the versions.bzl file - if ctx.attr.create_versions: - create_versions_file( - ctx, - digest = digest, - toolchain_config_spec_name = toolchain_config_spec_name, - java_home = java_home, - java_version = java_version, - project_root = export_project_root, - ) - - # Expand outputs to project dir - expand_outputs( - ctx, - bazel_version = ctx.attr.bazel_version, - project_root = export_project_root, - toolchain_config_spec_name = toolchain_config_spec_name, - ) - else: - ctx.report_progress("creating external repo platform") - create_external_repo_platform( - ctx, - exec_properties = ctx.attr.internal_exec_properties, - exec_compatible_with = exec_compatible_with, - target_compatible_with = target_compatible_with, - image_name = resolve_rbe_original_image_name(ctx, image_name), - name = name, - use_legacy_platform_definition = ctx.attr.use_legacy_platform_definition, - ) - create_configs_tar(ctx) - - # If we found checked in confs or if outputs were moved - # to output_base create the alisases. - if ctx.attr.config_version or ctx.attr.export_configs: - create_config_aliases(ctx, toolchain_config_spec_name) - create_alias_platform( - ctx, - exec_properties = ctx.attr.internal_exec_properties, - exec_compatible_with = exec_compatible_with, - target_compatible_with = target_compatible_with, - image_name = resolve_rbe_original_image_name(ctx, image_name), - name = name, - toolchain_config_spec_name = toolchain_config_spec_name, - use_legacy_platform_definition = ctx.attr.use_legacy_platform_definition, - ) - - # Copy all outputs to the test directory - if ctx.attr.create_testdata: - copy_to_test_dir(ctx) - -# Private declaration of _rbe_autoconfig repository rule. Do not use this -# rule directly, use rbe_autoconfig macro declared below. -_rbe_autoconfig = repository_rule( - attrs = { - "base_container_digest": attr.string( - doc = ("Optional. If the container to use for the RBE build " + - "extends from the one defined in the 'toolchain_config_suite_spec' " + - "(defaults to rbe-ubuntu16-04 image), you can " + - "pass the digest (sha256 sum) of the base container here " + - "and this rule will attempt to use checked-in " + - "configs if possible." + - "The digest (sha256 sum) of the base image. " + - "For example, " + - "sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" + - ", note the digest includes 'sha256:'"), - ), - "bazel_rc_version": attr.int( - doc = ("Optional. An rc version to use. Note an installer for " + - "the rc must be available in https://releases.bazel.build."), - ), - "bazel_to_config_spec_names_map": attr.string_list_dict( - doc = ("Set by rbe_autoconfig macro. A dict with keys corresponding to bazel versions, " + - "values corresponding to lists of configs. Must point to the " + - "bazel_to_config_versions def in the versions.bzl file " + - "located in the 'output_base' of the 'toolchain_config_suite_spec'."), - ), - "bazel_version": attr.string( - default = "local", - doc = ("The version of Bazel to use to generate toolchain configs." + - "Use only (major, minor, patch), e.g., '0.20.0'."), - mandatory = True, - ), - "toolchain_config_spec_name": attr.string( - doc = ("The name of the toolchain config spec to be generated."), - ), - "configs_obj_config_repos": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'config_repos' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_create_cc_configs": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'cc_configs' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_create_java_configs": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'java_configs' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_env_keys": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'env_keys' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_env_values": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'env_values' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_java_home": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'java_home' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_java_version": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'java_version' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "configs_obj_names": attr.string_list( - doc = ("Set by rbe_autoconfig macro. Set to list 'names' generated by config_to_string_lists def in " + - "//rules/rbe_repo/toolchain_config_suite_spec.bzl."), - ), - "config_repos": attr.string_list( - doc = ("Set by rbe_autoconfig macro. list of additional external repos corresponding to " + - "configure like repo rules that need to be produced in addition to " + - "local_config_cc."), - ), - "config_version": attr.string( - doc = ("The config version found for the given container and " + - "Bazel version. " + - "Used internally when use_checked_in_confs is true."), - ), - "container_to_config_spec_names_map": attr.string_list_dict( - doc = ("Set by rbe_autoconfig macro. A dict with keys corresponding to containers and " + - "values corresponding to lists of configs. Must point to the " + - "container_to_config_version def in the versions.bzl file " + - "located in the 'output_base' of the 'toolchain_config_suite_spec'."), - ), - "create_cc_configs": attr.bool( - doc = ( - "Specifies whether to generate C/C++ configs. " + - "Defauls to True." - ), - mandatory = True, - ), - "create_java_configs": attr.bool( - doc = ( - "Optional. Specifies whether to generate java configs. " + - "Defauls to True." - ), - mandatory = True, - ), - "create_testdata": attr.bool( - doc = ( - "Specifies whether to generate additional " + - "testing only outputs. " + - "Defauls to False." - ), - mandatory = True, - ), - # TODO(ngiraldo): remove once migration to use generated file completes - "create_versions": attr.bool( - doc = ( - "Specifies whether to generate versions.bzl " + - "file in output_base of the toolchain_config_suite_spec. " + - "This option is temporary while migration to use. " + - "generated file by this rule is taking place. " + - "Defauls to True." - ), - mandatory = True, - ), - "detect_java_home": attr.bool( - doc = ( - "Specifies whether to find the JAVA_HOME as set in the" + - "container. " + - "Defauls to False." - ), - mandatory = True, - ), - "digest": attr.string( - doc = ("Optional. The digest (sha256 sum) of the image to pull. " + - "For example, " + - "sha256:87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c" + - ", note the digest includes 'sha256:'"), - ), - "env": attr.string_dict( - doc = ("Optional. Dictionary from strings to strings. Additional env " + - "variables that will be set when running the Bazel command to " + - "generate the toolchain configs."), - ), - "exec_compatible_with": attr.string_list( - doc = ("Optional. The list of constraints that will be added to the " + - "toolchain in its exec_compatible_with attribute (and to " + - "the platform in its constraint_values attr). For " + - "example, [\"@bazel_tools//platforms:linux\"]."), - ), - "internal_exec_properties": attr.string_dict( - doc = ( - "Optional. The execution properties to be used when creating the " + - "underlying platform. When providing this attribute, " + - "use_legacy_platform_definition must be set to False. Note that " + - "the container image property must not be specified via this " + - "attribute." - ), - ), - "export_configs": attr.bool( - doc = ( - "Specifies whether to copy generated configs to the 'output_base' " + - "of the 'toolchain_config_suite_spec' (if configs are generated) " + - "If set to False, a configs.tar file will also be produced in the " + - ("external repo. This tar file can be then published to a URL and " + - " e.g., be used via an 'http_archive' rule from an arbitrary repo." + - "Default is False.") - ), - mandatory = True, - ), - "java_home": attr.string( - doc = ("Optional. The location of java_home in the container. For " + - "example , '/usr/lib/jvm/java-8-openjdk-amd64'. Only " + - "relevant if 'create_java_configs' is true. If 'create_java_configs' is " + - "true, the execution of the rule generates configs, and this attribute " + - "is not set, the rule will attempt to read the " + - "JAVA_HOME env var from the container. If that is not set, the rule " + - "will fail."), - ), - "java_version": attr.string( - doc = ("Optional. The Java release version in the container. For " + - " example, 11. Should only be set if java_home is set."), - ), - "registry": attr.string( - doc = ("Optional. The registry to pull the container from. For example, " + - "marketplace.gcr.io. The default is the value for the selected " + - "toolchain_config_suite_spec (rbe-ubuntu16-04 image for " + - "default_toolchain_config_suite_spec, if no toolchain_config_suite_spec was selected)."), - ), - "repository": attr.string( - doc = ("Optional. The repository to pull the container from. For example, " + - "google/ubuntu. The default is the " + - "value for the selected toolchain_config_suite_spec (rbe-ubuntu16-04 image for " + - "default_toolchain_config_suite_spec, if no toolchain_config_suite_spec was selected)."), - ), - "toolchain_config_suite_spec": attr.string_dict( - doc = ("Set by rbe_autoconfig macro. Dict containing values to identify a " + - "toolchain container + GitHub repo where configs are " + - "stored. Must include keys: 'repo_name' (name of the " + - "external repo, 'output_base' (relative location of " + - "the output base in the GitHub repo where configs are " + - "located), and 'container_repo', 'container_registry', " + - "'container_name' (describing the location of the " + - "base toolchain container)"), - allow_empty = False, - mandatory = True, - ), - "setup_cmd": attr.string( - default = "cd .", - doc = ("Optional. Pass an additional command that will be executed " + - "(inside the container) before running bazel to generate the " + - "toolchain configs"), - ), - "tag": attr.string( - doc = ("Optional. The tag of the image to pull, e.g. latest."), - ), - "target_compatible_with": attr.string_list( - doc = ("The list of constraints that will be added to the " + - "toolchain in its target_compatible_with attribute. For " + - "example, [\"@bazel_tools//platforms:linux\"]."), - ), - "use_checked_in_confs": attr.string( - default = CHECKED_IN_CONFS_TRY, - doc = ("Default: 'Try'. Try to look for checked in configs " + - "before generating them. If set to 'False' (string) the " + - "rule will allways attempt to generate the configs " + - "by pulling a toolchain container and running Bazel inside. " + - "If set to 'Force' rule will error out if no checked-in" + - "configs were found."), - values = CHECKED_IN_CONFS_VALUES, - ), - "use_legacy_platform_definition": attr.bool( - doc = ( - "Specifies whether the underlying platform uses the " + - "remote_execution_properties property (if use_legacy_platform_definition " + - "is True) or the exec_properties property. The reason why this " + - "is important is because a platform that inherits from this " + - "platform and wishes to add execution properties must use the " + - "same field remote_execution_properties/exec_properties that " + - "the parent platform uses. This attribute must be set to False if the " + - "exec_properties attribute is set." - ), - mandatory = True, - ), - }, - environ = [ - AUTOCONF_ROOT, - DOCKER_PATH, - ], - implementation = _rbe_autoconfig_impl, - local = True, -) - -def rbe_autoconfig( - name, - base_container_digest = None, - bazel_version = None, - bazel_rc_version = None, - toolchain_config_spec_name = None, - config_repos = None, - create_cc_configs = True, - create_java_configs = True, - create_testdata = False, - create_versions = True, - detect_java_home = False, - digest = None, - env = None, - exec_compatible_with = None, - exec_properties = None, - export_configs = False, - java_home = None, - java_version = None, - tag = None, - toolchain_config_suite_spec = default_toolchain_config_suite_spec(), - registry = None, - repository = None, - target_compatible_with = None, - use_checked_in_confs = CHECKED_IN_CONFS_TRY, - use_legacy_platform_definition = True): - """ Creates a repository with toolchain configs generated for a container image. - - This macro wraps (and simplifies) invocation of _rbe_autoconfig rule. - Use this macro in your WORKSPACE. - - Args: - name: Name of the rbe_autoconfig repository target. - base_container_digest: Optional. If the container to use for the RBE build - extends from the container defined in the toolchain_config_suite_spec - (by default, the rbe-ubuntu16-04 image), you can pass the digest - (sha256 sum) of the base container using this attr. - The rule will try to use of checked-in configs, if possible. - bazel_version: The version of Bazel to use to generate toolchain configs. - `Use only (major, minor, patch), e.g., '0.20.0'. Default is "local" - which means the same version of Bazel that is currently running will - be used. If local is a non release version, rbe_autoconfig will fallback - to using the latest release version (see _BAZEL_VERSION_FALLBACK). - Note, if configs are not found for a patch version, rule will attempt - to find ones for the corresponding x.x.0 version. So if you are using - Bazel 0.25.2, and configs are not found for that version, but are - available for 0.25.0, those will be used instead. Note: this is only - the case if use_checked_in_confs != "False" (string 'False'). - bazel_rc_version: The rc (for the given version of Bazel) to use. - Must be published in https://releases.bazel.build. E.g. 2. - toolchain_config_spec_name: Optional. String. Override default config - defined in toolchain_config_suite_spec. - If export_configs is True, this value is used to set the name of the - toolchain config spec to be generated. - config_repos: Optional. List of additional external repos corresponding to - configure like repo rules that need to be produced in addition to - local_config_cc. - create_cc_configs: Optional. Specifies whether to generate C/C++ configs. - Defauls to True. - create_java_configs: Optional. Specifies whether to generate java configs. - Defauls to True. - create_testdata: Optional. Specifies whether to generate additional testing - only outputs. Defauls to False. - create_versions: Specifies whether to generate versions.bzl - file in 'output_base' of the 'toolchain_config_suite_spec'. - This option is temporary while migration to use. - generated file by this rule is taking place. - Defauls to True. - digest: Optional. The digest of the image to pull. - Should not be set if 'tag' is used. - Must be set together with 'registry' and 'repository'. - detect_java_home: Optional. Default False. Should only be set - to True if 'create_java_configs' is also True. If set to True the rule - will attempt to read the JAVA_HOME env var from the container. - Note if java_home is not set and this is set to False, the rule will - attempt to find a value of java_home in a compatible - 'toolchain_config_spec', fallback to using the 'default_java_home' in - the 'toolchain_config_suite_spec', fallback to turning on 'detect_java_home, - (unless use_checked_in_confs = Force was set), or otherwise fail with an - informative error. - env: dict. Optional. Additional environment variables that will be set when - running the Bazel command to generate the toolchain configs. - Set to values for marketplace.gcr.io/google/rbe-ubuntu16-04 container. - Note: Do not pass a custom JAVA_HOME via env, use java_home attr instead. - exec_compatible_with: Optional. List of constraints to add to the produced - toolchain/platform targets (e.g., ["@bazel_tools//platforms:linux"] in the - exec_compatible_with/constraint_values attrs, respectively. - exec_properties: Optional. A string->string dict containing execution - properties to be used when creating the underlying platform. When - providing this attribute use_legacy_platform_definition must be set - to False. Note that the container image property must not be specified - via this attribute. - export_configs: Optional, default False. Whether to copy generated configs - (if they are generated) to the 'output_base' defined in - 'toolchain_config_suite_spec'. If set to False, a configs.tar file - will also be produced in the external repo. This tar file can be then - published to a URL and e.g., be used via an 'http_archive' rule - from an arbitrary repo. - java_home: Optional. The location of java_home in the container. For - example , '/usr/lib/jvm/java-8-openjdk-amd64'. Should only be set - if 'create_java_configs' is True. Cannot be set if detect_java_home - is set to True. - Note if detect_java_home is set to False and this is not set, the - rule will attempt to find a value of java_home in a compatible - 'toolchain_config_spec', fallback to using the 'default_java_home' in - the 'toolchain_config_suite_spec', fallback to turning on 'detect_java_home' - (unless use_checked_in_confs = Force was set), or otherwise fail with an - informative error. - java_version: Optional. The Java release version in the container. For - example, 11. Should only be set if java_home is set. - tag: Optional. The tag of the container to use. - Should not be set if 'digest' is used. - Must be set together with 'registry' and 'repository'. - Note if you use any tag other than 'latest' (w/o specifiyng 'base_container_digest') - configs will need to be generaed, and a container will need to be pulled. - Note using 'latest' will default to the 'latest_container' - defined in the 'toolchain_config_suite_spec' - toolchain_config_suite_spec: Optional. Defaults to using @bazel_toolchains as - source for toolchain_config_suite_spec. - Should only be set differently if you are using a diferent repo - as source for your toolchain configs. - For details of the expected structure of toolchain_config_suite_spec dict please see - //rules/rbe_repo:toolchain_config_suite_spec.bzl - registry: Optional. The registry from which to pull the base image. - Should only be set if a custom container is required. - Must be set together with digest and repository. - repository: Optional. he `repository` of images to pull from. - Should only be set if a custom container is required. - Must be set together with registry and digest. - target_compatible_with: List of constraints to add to the produced - toolchain target (e.g., ["@bazel_tools//platforms:linux"]) in the - target_compatible_with attr. - use_checked_in_confs: Default: "Try". Try to look for checked in configs - before generating them. If set to "False" (string) the rule will - allways attempt to generate the configs by pulling a toolchain - container and running Bazel inside. If set to "Force" rule will error - out if no checked-in configs were found. - use_legacy_platform_definition: Defaults to True (for now). - Specifies whether the underlying platform uses the - remote_execution_properties property (if use_legacy_platform_definition - is True) or the exec_properties property. The reason why this - is important is because a platform that inherits from this - platform and wishes to add execution properties must use the - same field remote_execution_properties/exec_properties that - the parent platform uses. This attribute must be set to False if the - exec_properties attribute is set. - """ - if not use_checked_in_confs in CHECKED_IN_CONFS_VALUES: - fail("use_checked_in_confs must be one of %s." % CHECKED_IN_CONFS_VALUES) - - if bazel_rc_version and not bazel_version: - fail("bazel_rc_version can only be used with bazel_version.") - - if not create_java_configs and (java_home or java_version or detect_java_home): - fail("java_home, java_version, or detect_java_home should not be set when " + - "create_java_configs is False.") - if java_home and detect_java_home: - fail("java_home should not be set when detect_java_home is True.") - if java_version and detect_java_home: - fail("java_version should not be set when detect_java_home is True.") - - validate_toolchain_config_suite_spec(name, toolchain_config_suite_spec) - - # Resolve the Bazel version to use. - if not bazel_version or bazel_version == "local": - bazel_version = str(extract_version_number(_BAZEL_VERSION_FALLBACK)) - rc = parse_rc(native.bazel_version) - bazel_rc_version = rc if rc != -1 else None - - if tag and digest: - fail("'tag' and 'digest' cannot be set at the same time.") - - if not ((not digest and not tag and not repository and not registry) or - (digest and repository and registry) or - (tag and repository and registry)): - fail("All of 'digest', 'repository' and 'registry' or " + - "all of 'tag', 'repository' and 'registry' or " + - "none of them must be set.") - - if use_legacy_platform_definition == True and exec_properties: - fail("exec_properties must not be set when " + - "use_legacy_platform_definition is True.") - - if exec_properties and "container-image" in exec_properties: - fail("exec_properties must not contain a container image") - - # Set to defaults only if all are unset. - if not repository and not registry and not tag and not digest: - repository = toolchain_config_suite_spec["container_repo"] - registry = toolchain_config_suite_spec["container_registry"] - - toolchain_config_spec, selected_digest = validateUseOfCheckedInConfigs( - name = name, - base_container_digest = base_container_digest, - bazel_version = bazel_version, - bazel_rc_version = bazel_rc_version, - config_repos = config_repos, - create_cc_configs = create_cc_configs, - detect_java_home = detect_java_home, - digest = digest, - env = env, - java_home = java_home, - toolchain_config_suite_spec = toolchain_config_suite_spec, - registry = registry, - repository = repository, - requested_toolchain_config_spec_name = toolchain_config_spec_name, - tag = tag, - use_checked_in_confs = use_checked_in_confs, - ) - - # If create_java_configs was requested but no java_home or detect_java_home was - # set, we try to resolve a java_home - if create_java_configs and not java_home and not detect_java_home: - # If a spec was found and that has a java_home, use it - if toolchain_config_spec and toolchain_config_spec.create_java_configs: - java_home = toolchain_config_spec.java_home - - elif toolchain_config_suite_spec.get("default_java_home"): - # Fallback to try to using the default_java_home set in the - # toolchain_config_suite_spec - java_home = toolchain_config_suite_spec.get("default_java_home") - - elif use_checked_in_confs != CHECKED_IN_CONFS_FORCE: - # Fallback to detecting the java_home if CHECKED_IN_CONFS_FORCE - # was not passed - detect_java_home = True - - elif toolchain_config_spec and use_checked_in_confs == CHECKED_IN_CONFS_FORCE: - # If we get here, the toolchain_config_spec we found does not - # provide a java_home that we can use, and the toolchain_config_suite_spec - # does not have a default one either, so just fail early. - fail(("Target '{name}' failed: use_checked_in_confs was set to '{force}' " + - "but no checked-in configs were found which provide a value for java_home. " + - "This may be solved by defining a 'default_java_home' in the " + - "toolchain_config_spec or by explicitly setting 'java_home' in '{name}'").format( - name = name, - force = CHECKED_IN_CONFS_FORCE, - )) - - # If create_java_configs was requested but no java_version or detect_java_home was - # set, we try to resolve a java_home - if create_java_configs and not java_version and not detect_java_home: - # If a spec was found and that has a java_home, use it - if toolchain_config_spec and toolchain_config_spec.create_java_configs: - java_version = toolchain_config_spec.java_version - - elif toolchain_config_suite_spec.get("default_java_version"): - # Fallback to try to using the default_java_version set in the - # toolchain_config_suite_spec - java_version = toolchain_config_suite_spec.get("default_java_version") - - elif use_checked_in_confs != CHECKED_IN_CONFS_FORCE: - # Fallback to detecting the java_home if CHECKED_IN_CONFS_FORCE - # was not passed - detect_java_home = True - - elif toolchain_config_spec and use_checked_in_confs == CHECKED_IN_CONFS_FORCE: - # If we get here, the toolchain_config_spec we found does not - # provide a java_home that we can use, and the toolchain_config_suite_spec - # does not have a default one either, so just fail early. - fail(("Target '{name}' failed: use_checked_in_confs was set to '{force}' " + - "but no checked-in configs were found which provide a value for java_version. " + - "This may be solved by defining a 'default_java_version' in the " + - "toolchain_config_spec or by explicitly setting 'java_version' in '{name}'").format( - name = name, - force = CHECKED_IN_CONFS_FORCE, - )) - - # If the user selected no digest explicitly, and one was returned - # by validateUseOfCheckedInConfigs, use that one. - if not digest and selected_digest: - digest = selected_digest - default_toolchain_config_spec_set = toolchain_config_suite_spec.get("toolchain_config_suite_autogen_spec").default_toolchain_config_spec != "" - - # If using the registry and repo defined in the toolchain_config_suite_spec struct then - # set the env if its not set (if defined in toolchain_config_suite_spec). - # Also try to set the digest (preferably to avoid pulling container), - # default to setting the tag to 'latest' - if ((registry and registry == toolchain_config_suite_spec["container_registry"]) and - (repository and repository == toolchain_config_suite_spec["container_repo"])): - if not env and default_toolchain_config_spec_set: - env = toolchain_config_suite_spec.get("toolchain_config_suite_autogen_spec").default_toolchain_config_spec.env - if tag == "latest" and toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container != "": - tag = None - digest = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container - if not digest and not tag and toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container != "": - digest = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container - if not digest and not tag: - tag = "latest" - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC_NAME if not default_toolchain_config_spec_set else toolchain_config_suite_spec.get("toolchain_config_suite_autogen_spec").default_toolchain_config_spec.name - - # Replace the default_toolchain_config_spec struct for its name, as the rule expects a string dict. - # also, dont include the toolchain_config_suite_autogen_spec attr as its a struct (which we flatten below) - toolchain_config_suite_spec_stripped = { - "default_toolchain_config_spec": default_toolchain_config_spec, - "repo_name": toolchain_config_suite_spec["repo_name"], - "output_base": toolchain_config_suite_spec["output_base"], - "container_repo": toolchain_config_suite_spec["container_repo"], - "container_registry": toolchain_config_suite_spec["container_registry"], - "latest_container": toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container, - } - - config_objs = struct( - names = None, - java_home = None, - java_version = None, - create_java_configs = None, - create_cc_configs = None, - config_repos = None, - env_keys = None, - env_values = None, - ) - - bazel_to_config_spec_names_map = None - container_to_config_spec_names_map = None - if export_configs: - # Flatten toolchain_config_specs structs to pass configs to rule - config_objs = config_to_string_lists(toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].toolchain_config_specs) - bazel_to_config_spec_names_map = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].bazel_to_config_spec_names_map - container_to_config_spec_names_map = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map - - _rbe_autoconfig( - name = name, - base_container_digest = base_container_digest, - bazel_version = bazel_version, - bazel_rc_version = bazel_rc_version, - bazel_to_config_spec_names_map = bazel_to_config_spec_names_map, - toolchain_config_spec_name = toolchain_config_spec_name, - configs_obj_names = config_objs.names, - configs_obj_java_home = config_objs.java_home if create_java_configs else None, - configs_obj_java_version = config_objs.java_version if create_java_configs else None, - configs_obj_create_java_configs = config_objs.create_java_configs, - configs_obj_create_cc_configs = config_objs.create_cc_configs, - configs_obj_config_repos = config_objs.config_repos, - configs_obj_env_keys = config_objs.env_keys, - configs_obj_env_values = config_objs.env_values, - config_repos = config_repos, - config_version = None if toolchain_config_spec == None else toolchain_config_spec.name, - container_to_config_spec_names_map = container_to_config_spec_names_map, - create_cc_configs = create_cc_configs, - create_java_configs = create_java_configs, - create_testdata = create_testdata, - create_versions = create_versions, - detect_java_home = detect_java_home, - digest = digest, - env = env, - exec_compatible_with = exec_compatible_with, - internal_exec_properties = exec_properties, - export_configs = export_configs, - java_home = java_home, - java_version = java_version, - toolchain_config_suite_spec = toolchain_config_suite_spec_stripped, - registry = registry, - repository = repository, - tag = tag, - target_compatible_with = target_compatible_with, - use_checked_in_confs = use_checked_in_confs, - use_legacy_platform_definition = use_legacy_platform_definition, - ) diff --git a/rules/rbe_repo/.latest.bazelrc.tpl b/rules/rbe_repo/.latest.bazelrc.tpl deleted file mode 100644 index 4906cec81..000000000 --- a/rules/rbe_repo/.latest.bazelrc.tpl +++ /dev/null @@ -1,33 +0,0 @@ -# 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. - -# This .bazelrc file is generated by rbe_autoconfig -# when the output_base attr is used. -# It contains some of the flags required for the provided -# toolchain with Remote Build Execution. -# Specifically, it includes all toolchain/platform flags -# This file is used for testing purposes. - -build:remote --host_javabase=//%{dest_target}/java:jdk -build:remote --javabase=//%{dest_target}/java:jdk -build:remote --crosstool_top=//%{dest_target}/cc:toolchain -build:remote --extra_toolchains=//%{dest_target}/config:cc-toolchain -build:remote --extra_execution_platforms=//%{dest_target}/config:platform -build:remote --host_platform=//%{dest_target}/config:platform -build:remote --platforms=//%{dest_target}/config:platform - -# Import the default bazelrc file in bazel-toolchains repo. -# This will only work for tests executed from bazel-toolchains -# repo. -try-import %workspace%/bazelrc/.bazelrc.notoolchain diff --git a/rules/rbe_repo/BUILD b/rules/rbe_repo/BUILD deleted file mode 100644 index 5c2ba7d43..000000000 --- a/rules/rbe_repo/BUILD +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -load("@bazel_skylib//:bzl_library.bzl", "bzl_library") - -bzl_library( - name = "rbe_repo", - srcs = [ - "build_gen.bzl", - "checked_in.bzl", - "container.bzl", - "outputs.bzl", - "toolchain_config_suite_spec.bzl", - "util.bzl", - "version_check.bzl", - ], -) diff --git a/rules/rbe_repo/BUILD.cc_alias.tpl b/rules/rbe_repo/BUILD.cc_alias.tpl deleted file mode 100644 index 5319850f9..000000000 --- a/rules/rbe_repo/BUILD.cc_alias.tpl +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -alias( - name = "toolchain", - actual = "%{toolchain}", -) - diff --git a/rules/rbe_repo/BUILD.java.tpl b/rules/rbe_repo/BUILD.java.tpl deleted file mode 100644 index a1ee38746..000000000 --- a/rules/rbe_repo/BUILD.java.tpl +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "%{java_home}", -) diff --git a/rules/rbe_repo/BUILD.java_alias.tpl b/rules/rbe_repo/BUILD.java_alias.tpl deleted file mode 100644 index 6c911b010..000000000 --- a/rules/rbe_repo/BUILD.java_alias.tpl +++ /dev/null @@ -1,24 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -alias( - name = "jdk", - actual = "%{java_runtime}", -) diff --git a/rules/rbe_repo/BUILD.local_java_runtime.tpl b/rules/rbe_repo/BUILD.local_java_runtime.tpl deleted file mode 100644 index 94e067bcd..000000000 --- a/rules/rbe_repo/BUILD.local_java_runtime.tpl +++ /dev/null @@ -1,32 +0,0 @@ -# Copyright 2020 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -load("@bazel_tools//tools/jdk:local_java_repository.bzl", "local_java_runtime") - -package(default_visibility = ["//visibility:public"]) - -alias( - name = "jdk", - actual = "rbe_jdk", -) - -local_java_runtime( - name = "rbe_jdk", - java_home = "%{java_home}", - version = "%{java_version}", -) diff --git a/rules/rbe_repo/BUILD.platform.tpl b/rules/rbe_repo/BUILD.platform.tpl deleted file mode 100644 index ae2514477..000000000 --- a/rules/rbe_repo/BUILD.platform.tpl +++ /dev/null @@ -1,39 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - %{exec_compatible_with} - ], - target_compatible_with = [ - %{target_compatible_with} - ], - toolchain = "%{cc_toolchain}", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - %{exec_compatible_with} - ], - exec_properties = %{platform_exec_properties}, -) diff --git a/rules/rbe_repo/BUILD.platform_legacy.tpl b/rules/rbe_repo/BUILD.platform_legacy.tpl deleted file mode 100644 index e4886220f..000000000 --- a/rules/rbe_repo/BUILD.platform_legacy.tpl +++ /dev/null @@ -1,48 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - %{exec_compatible_with} - ], - target_compatible_with = [ - %{target_compatible_with} - ], - toolchain = "%{cc_toolchain}", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - %{exec_compatible_with} - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://%{image_name}" - } - properties { - name: "OSFamily" - value: "%{os_family}" - } - """, -) diff --git a/rules/rbe_repo/build_gen.bzl b/rules/rbe_repo/build_gen.bzl deleted file mode 100644 index 833fc1fd0..000000000 --- a/rules/rbe_repo/build_gen.bzl +++ /dev/null @@ -1,218 +0,0 @@ -# Copyright 2017 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. -""" Definitions to create BUILD files for rbe_autoconfig.""" - -load( - "//rules/rbe_repo:util.bzl", - "CC_CONFIG_DIR", - "JAVA_CONFIG_DIR", - "PLATFORM_DIR", - "os_family", -) -load("//rules/exec_properties:exec_properties.bzl", "create_rbe_exec_properties_dict") - -_CC_TOOLCHAIN = { - "Linux": ":cc-compiler-k8", - "Windows": ":cc-compiler-x64_windows", -} - -# Defining a local version of dicts.add in order not to create a dependency on bazel_skylib. -def _merge_dicts(*dict_args): - result = {} - for dictionary in dict_args: - if dictionary: - result.update(dictionary) - return result - -def create_config_aliases(ctx, toolchain_config_spec_name): - """Produces BUILD files with alias for the C++ and Java toolchain targets. - - Java toolchain aliases are only created if configs are exported. - - Args: - ctx: the Bazel context object. - toolchain_config_spec_name: name of the toolchain config spec - """ - if ctx.attr.create_cc_configs: - # Create the BUILD file with the alias for the cc_toolchain_suite - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:BUILD.cc_alias.tpl")) - toolchain = ("@{toolchain_config_repo}//{config_output_base}/{toolchain_config_spec_name}/bazel_{bazel_version}/{cc_dir}:toolchain".format( - toolchain_config_spec_name = toolchain_config_spec_name, - bazel_version = ctx.attr.bazel_version, - cc_dir = CC_CONFIG_DIR, - config_output_base = ctx.attr.toolchain_config_suite_spec["output_base"], - toolchain_config_repo = ctx.attr.toolchain_config_suite_spec["repo_name"], - )) - ctx.template( - CC_CONFIG_DIR + "/BUILD", - template, - { - "%{toolchain}": toolchain, - }, - False, - ) - if ctx.attr.create_java_configs and ctx.attr.export_configs: - # Create the BUILD file with the alias for the java_runtime - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:BUILD.java_alias.tpl")) - java_runtime = ("@{toolchain_config_repo}//{config_output_base}/{toolchain_config_spec_name}/bazel_{bazel_version}/{java_dir}:jdk".format( - toolchain_config_spec_name = toolchain_config_spec_name, - bazel_version = ctx.attr.bazel_version, - java_dir = JAVA_CONFIG_DIR, - config_output_base = ctx.attr.toolchain_config_suite_spec["output_base"], - toolchain_config_repo = ctx.attr.toolchain_config_suite_spec["repo_name"], - )) - ctx.template( - JAVA_CONFIG_DIR + "/BUILD", - template, - { - "%{java_runtime}": java_runtime, - }, - False, - ) - -def create_java_runtime(ctx, java_home, java_version): - """Creates a BUILD file with the java_runtime target. - - Args: - ctx: the Bazel context object. - java_home: the selected/resolved location for java_home. - java_version: the Java runtime release version - """ - bazel_version = tuple([int(n) for n in ctx.attr.bazel_version.split(".")]) - if bazel_version > (4, 0, 0) or not native.bazel_version: - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:BUILD.local_java_runtime.tpl")) - else: - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:BUILD.java.tpl")) - ctx.template( - JAVA_CONFIG_DIR + "/BUILD", - template, - { - "%{java_home}": java_home, - "%{java_version}": java_version, - }, - False, - ) - -def create_export_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, toolchain_config_spec_name, use_legacy_platform_definition): - """Creates a BUILD file (to be exported to output_base) with the cc_toolchain and platform targets. - - Args: - ctx: the Bazel context object. - exec_properties: A string->string dict containing execution properties to - be used when creating the platform. Will be used only when - use_legacy_platform_definition == False. This dict must not contain - "container-image". - exec_compatible_with: List of constraints to add to the produced - toolchain/platform targets (e.g., ["@bazel_tools//platforms:linux"] in the - exec_compatible_with/constraint_values attrs, respectively. - target_compatible_with: List of constraints to add to the produced - toolchain target (e.g., ["@bazel_tools//platforms:linux"]) in the - target_compatible_with attr. - image_name: the name of the image. - name: name of rbe_autoconfig repo rule. - toolchain_config_spec_name: name of the toolchain config spec - use_legacy_platform_definition: Whether to create a platform with - remote_execution_properties (legacy) or with exec_properties. - """ - cc_toolchain_target = "//" + ctx.attr.toolchain_config_suite_spec["output_base"] - if toolchain_config_spec_name: - cc_toolchain_target += "/" + toolchain_config_spec_name - cc_toolchain_target += "/bazel_" + ctx.attr.bazel_version - cc_toolchain_target += "/cc" + _CC_TOOLCHAIN[os_family(ctx)] - _create_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, cc_toolchain_target, use_legacy_platform_definition) - -def create_external_repo_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, use_legacy_platform_definition): - """Creates a BUILD file (to be used with configs in the external repo) with the cc_toolchain and platform targets. - - Args: - ctx: the Bazel context object. - exec_properties: A string->string dict containing execution properties to - be used when creating the platform. Will be used only when - use_legacy_platform_definition == False. This dict must not contain - "container-image". - exec_compatible_with: List of constraints to add to the produced - toolchain/platform targets (e.g., ["@bazel_tools//platforms:linux"] in the - exec_compatible_with/constraint_values attrs, respectively. - target_compatible_with: List of constraints to add to the produced - toolchain target (e.g., ["@bazel_tools//platforms:linux"]) in the - target_compatible_with attr. - image_name: the name of the image. - name: name of rbe_autoconfig repo rule. - use_legacy_platform_definition: Whether to create a platform with - remote_execution_properties (legacy) or with exec_properties. - """ - cc_toolchain_target = "@" + ctx.attr.name + "//" + CC_CONFIG_DIR + _CC_TOOLCHAIN[os_family(ctx)] - _create_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, cc_toolchain_target, use_legacy_platform_definition) - -def create_alias_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, toolchain_config_spec_name, use_legacy_platform_definition): - """Creates a BUILD file (pointing to checked in config) with the cc_toolchain and platform targets. - - Args: - ctx: the Bazel context object. - exec_properties: A string->string dict containing execution properties to - be used when creating the platform. Will be used only when - use_legacy_platform_definition == False. This dict must not contain - "container-image". - exec_compatible_with: List of constraints to add to the produced - toolchain/platform targets (e.g., ["@bazel_tools//platforms:linux"] in the - exec_compatible_with/constraint_values attrs, respectively. - target_compatible_with: List of constraints to add to the produced - toolchain target (e.g., ["@bazel_tools//platforms:linux"]) in the - target_compatible_with attr. - image_name: the name of the image. - name: name of rbe_autoconfig repo rule. - toolchain_config_spec_name: name of the toolchain config spec. - use_legacy_platform_definition: Whether to create a platform with - remote_execution_properties (legacy) or with exec_properties. - """ - cc_toolchain_target = ("@{toolchain_config_repo}//{config_output_base}/{toolchain_config_spec_name}/bazel_{bazel_version}/{cc_dir}{target}".format( - toolchain_config_spec_name = toolchain_config_spec_name, - bazel_version = ctx.attr.bazel_version, - cc_dir = CC_CONFIG_DIR, - config_output_base = ctx.attr.toolchain_config_suite_spec["output_base"], - target = _CC_TOOLCHAIN[os_family(ctx)], - toolchain_config_repo = ctx.attr.toolchain_config_suite_spec["repo_name"], - )) - _create_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, cc_toolchain_target, use_legacy_platform_definition) - -# Creates a BUILD file with the cc_toolchain and platform targets -def _create_platform(ctx, exec_properties, exec_compatible_with, target_compatible_with, image_name, name, cc_toolchain_target, use_legacy_platform_definition): - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:BUILD.platform_legacy.tpl")) if use_legacy_platform_definition else ctx.path(Label("@bazel_toolchains//rules/rbe_repo:BUILD.platform.tpl")) - exec_compatible_with = ("\"" + - ("\",\n \"").join(exec_compatible_with) + - "\",") - target_compatible_with = ("\"" + - ("\",\n \"").join(target_compatible_with) + - "\",") - - os = os_family(ctx) - platform_exec_properties = create_rbe_exec_properties_dict( - container_image = "docker://%s" % image_name, - os_family = os, - ) - platform_exec_properties = _merge_dicts(platform_exec_properties, exec_properties) - - ctx.template( - PLATFORM_DIR + "/BUILD", - template, - { - "%{cc_toolchain}": cc_toolchain_target, - "%{exec_compatible_with}": exec_compatible_with, - "%{image_name}": image_name, - "%{os_family}": os, - "%{platform_exec_properties}": "%s" % platform_exec_properties, - "%{target_compatible_with}": target_compatible_with, - }, - False, - ) diff --git a/rules/rbe_repo/checked_in.bzl b/rules/rbe_repo/checked_in.bzl deleted file mode 100644 index eebb5b1e7..000000000 --- a/rules/rbe_repo/checked_in.bzl +++ /dev/null @@ -1,278 +0,0 @@ -# Copyright 2017 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. -"""Exposes def to valiate if checked-in confs can be used in rbe_autoconf.""" - -CHECKED_IN_CONFS_TRY = "Try" -CHECKED_IN_CONFS_FORCE = "Force" -CHECKED_IN_CONFS_FALSE = "False" -CHECKED_IN_CONFS_VALUES = [ - CHECKED_IN_CONFS_TRY, - CHECKED_IN_CONFS_FORCE, - CHECKED_IN_CONFS_FALSE, -] - -def validateUseOfCheckedInConfigs( - name, - base_container_digest, - bazel_version, - bazel_rc_version, - config_repos, - create_cc_configs, - detect_java_home, - digest, - env, - java_home, - toolchain_config_suite_spec, - registry, - repository, - requested_toolchain_config_spec_name, - tag, - use_checked_in_confs): - """Check if checked-in configs are available and should be used. - - Finds if a C/C++ toolchain config has already been checked-in to - the external repo defined by the toolchain_config_suite_spec. Configs - are matched by Bazel version, container used to build the configs, - and env variables for C/C++ toolchain configuration. - If configs are found, return the toolchain_config_spec, and the digest - of a container compatible with that config. - - Args: - name: Name of the rule target. - base_container_digest: SHA256 sum digest of the base image. - bazel_version: Version string of the Bazel release. - bazel_rc_version: The RC version of the Bazel release if the given - Bazel release is a RC. - config_repos: list of additional external repos corresponding to - configure like repo rules that need to be produced in addition to - local_config_cc. - create_cc_configs: Optional. Specifies whether to generate C/C++ configs. - Defauls to True. - detect_java_home: if set to True checked-in configs will not be used - digest: The digest of the container in which the configs are goings to - be used. - env: The environment dict. - java_home: Path to the Java home. - registry: The registry where the toolchain container can be found. - toolchain_config_suite_spec: Dict containing values to identify a toolchain - container + GitHub repo where configs are stored. Must - include keys: - 'repo_name': name of the Bazel external repo containing - configs - 'output_base': relative location of the output base in the - GitHub repo where configs are located) - 'container_repo': repo for the base toolchain container - 'container_registry': registry for the base toolchain container - 'latest_container': sha of the latest container - container_to_config_spec_names_map: Optional. Only required when export_configs - is set. Set to point to def container_to_config_spec_names() - defined in the versions.bzl file generated in the output_base defined - in the toolchain_config_suite_spec. - toolchain_config_specs: Must point to a list containing structs, - each struct represents a repo config with 'name' (str), - 'java_home'(str), 'create_java_configs' (bool), 'create_cc_configs' (bool), - 'config_repos' (string list) and 'env' (dict). - bazel_to_config_spec_names_map: Set to point to def bazel_to_config_versions() - defined in the versions.bzl file generated in the output_base defined - in the toolchain_config_suite_spec. - repository: The path to the toolchain container on the registry. - requested_toolchain_config_spec_name: the toolchain_config_spec_name of the config requested by the user. - tag: The tag on the toolchain container. - use_checked_in_confs: Whether to use checked in configs. - - Returns: - The toolchain_config_spec if one was found - The recommended digest for this toolchain_config_spec (might be - overriden by rbe_repo if user if user requested a different one) - """ - if use_checked_in_confs == CHECKED_IN_CONFS_FALSE: - print("%s not using checked in configs as user set attr to 'False' " % name) - return None, None - if detect_java_home: - print("%s not using checked in configs as detect_java_home was set to True " % name) - return None, None - if bazel_rc_version: - print("%s not using checked in configs as bazel rc version was used " % name) - return None, None - - if not base_container_digest: - # If no base_container_digest was set we only use checked-in confs if - # the registry and repo match the toolchain_config_suite_spec - if registry and registry != toolchain_config_suite_spec["container_registry"]: - print(("%s not using checked in configs; registry was set to '%s' " + - "and toolchain_config_suite_spec is configured for '%s'") % - (name, registry, toolchain_config_suite_spec["container_registry"])) - return None, None - if repository and repository != toolchain_config_suite_spec["container_repo"]: - print(("%s not using checked in configs; repository was set to '%s' " + - "and toolchain_config_suite_spec is configured for '%s'") % - (name, repository, toolchain_config_suite_spec["container_repo"])) - return None, None - bazel_to_config_spec_names_map = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].bazel_to_config_spec_names_map - if not bazel_to_config_spec_names_map.get(bazel_version): - # TODO(nlopezgi): consider trying to fall back to 0.x.0 version if 0.x.y (y>0) - print(("%s not using checked in configs; Bazel version %s " + - "was picked/selected but no checked in config was " + - "found in map %s") % - (name, bazel_version, str(bazel_to_config_spec_names_map))) - return None, None - - # Find a config for the given version of bazel - bazel_compat_configs = bazel_to_config_spec_names_map.get(bazel_version) - if not bazel_to_config_spec_names_map.get(bazel_version): - print(("%s not using checked in configs; Bazel version %s was " + - "picked/selected but no checked in config was found in map %s") % - (name, bazel_version, str(bazel_to_config_spec_names_map))) - return None, None - - # Try to resolve the digest with the base_container_digest or if latest was set as tag - if base_container_digest: - digest = base_container_digest - if tag: # Implies `digest` is not specified. - if tag == "latest" and toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container != "": - digest = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container - # if any tag other than latest is used we will not use checked-in configs - # (to not hardcode tag info anywhere in these rules) - - else: - print(("%s not using checked in configs; tag (other than " + - "latest) was selected") % name) - return None, None - config = None - container_to_config_spec_names_map = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map - - toolchain_config_specs = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].toolchain_config_specs - - # If a digest was provided/selected lets try to find a config that will work - if digest: - compatible_configs = container_to_config_spec_names_map.get(digest) - if not compatible_configs: - print(("%s not using checked in configs; digest '%s' was picked/selected " + - "but no compatible checked in config was found in " + - "map '%s'") % (name, digest, str(container_to_config_spec_names_map))) - return None, None - if requested_toolchain_config_spec_name and requested_toolchain_config_spec_name not in compatible_configs: - print(("%s not using checked in configs; config with name '%s' was requested " + - "but was not found in '%s' compatible configs for the " + - "container with digest '%s'") % - (name, requested_toolchain_config_spec_name, compatible_configs, digest)) - return None, None - - # pick a config: first try the default - if (toolchain_config_suite_spec.get("toolchain_config_suite_autogen_spec").default_toolchain_config_spec != "" and - toolchain_config_suite_spec.get("toolchain_config_suite_autogen_spec").default_toolchain_config_spec.name in compatible_configs): - config = toolchain_config_suite_spec.get("toolchain_config_suite_autogen_spec").default_toolchain_config_spec - else: - config = _get_config(compatible_configs[0], toolchain_config_specs) - - # If a config was requested or found via digest, lets see if its compatible with - # the selected Bazel version - if requested_toolchain_config_spec_name or config: - if requested_toolchain_config_spec_name: - config = _get_config(requested_toolchain_config_spec_name, toolchain_config_specs) - if config and config.name not in bazel_compat_configs: - print(("%s not using checked in configs; config %s was " + - "picked/selected, Bazel version %s was picked/selected " + - "but no checked in config was found in %s") % - (name, config, bazel_version, str(bazel_compat_configs))) - return None, None - - # We have found a candiadate config, lets check if env / config_repos match - if config and not _check_config( - candidate_config = config, - config_repos = config_repos, - create_cc_configs = create_cc_configs, - env = env, - name = name, - ): - print(("%s not using checked in configs; '%s' was picked/selected as a candidate " + - "matching config for Bazel %s from whose list of compatible configs are %s " + - "but it does not match the 'env = %s', 'config_repos = %s', " + - "and/or 'create_cc_configs = %s' passed as attrs") % - ( - name, - config, - bazel_version, - str(bazel_compat_configs), - env, - config_repos, - create_cc_configs, - )) - return None, None - - # If we have not found a config so far, pick one that will work for the - # selected Bazel version - if not config: - for candidate_config in bazel_compat_configs: - if _check_config( - candidate_config = _get_config(candidate_config, toolchain_config_specs), - config_repos = config_repos, - create_cc_configs = create_cc_configs, - env = env, - name = name, - ): - config = _get_config(candidate_config, toolchain_config_specs) - if not config: - print(("%s not using checked in configs; Bazel version %s was " + - "picked/selected with '%s' compatible configs but none match " + - "the 'env = %s', 'config_repos = %s'," + - "and/or 'create_cc_configs = %s' passed as attrs") % - ( - name, - bazel_version, - str(bazel_compat_configs), - env, - config_repos, - create_cc_configs, - )) - return None, None - - # Resolve the digest: - # First, try to use latest if that works. - # If not, pick the first container that works. - if (config and toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container != "" and - config.name in container_to_config_spec_names_map[toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container]): - digest = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container - if not digest: - for key in container_to_config_spec_names_map.keys(): - if config and config.name in container_to_config_spec_names_map[key]: - digest = key - break - if not digest: - print(("%s not using checked in configs; no digest was found " + - "for config '%s' in %s") % (name, config, container_to_config_spec_names_map)) - return None, None - - return config, digest - -def _get_config(toolchain_config_spec_name, toolchain_config_specs): - for spec in toolchain_config_specs: - if spec.name == toolchain_config_spec_name: - return spec - return None - -def _check_config( - candidate_config, - config_repos, - create_cc_configs, - env, - name): - if config_repos and config_repos != candidate_config.config_repos: - return False - if env and env != candidate_config.env: - return False - if create_cc_configs and not candidate_config.create_cc_configs: - return False - - return True diff --git a/rules/rbe_repo/container.bzl b/rules/rbe_repo/container.bzl deleted file mode 100644 index 994c387d0..000000000 --- a/rules/rbe_repo/container.bzl +++ /dev/null @@ -1,390 +0,0 @@ -# Copyright 2017 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. -"""Exposes tools for rbe_autoconfig to interact with containers/docker.""" - -load( - "//rules/rbe_repo:util.bzl", - "CC_CONFIG_DIR", - "os_family", - "print_exec_results", -) - -# External folder is set to be deprecated, lets keep it here for easy -# refactoring -# https://github.com/bazelbuild/bazel/issues/1262 -_EXTERNAL_FOLDER_PREFIX = "external/" - -_ROOT_DIR = { - "Linux": "/rbe_autoconf", - "Windows": "C:/rbe_autoconf", -} -_PROJECT_REPO_DIR = "project_src" -_OUTPUT_DIR = "autoconf_out" - -_DOCKER_RUN_USER = { - "Linux": "root", - "Windows": "ContainerAdministrator", -} - -_BAZELISK_RELEASE = "v1.3.0" -_BAZELISK_DOWNLOAD_INFO = { - "Linux": struct( - file_name = "bazelisk", - url = "https://github.com/bazelbuild/bazelisk/releases/download/%s/bazelisk-linux-amd64" % _BAZELISK_RELEASE, - sha256 = "98af93c6781156ff3dd36fa06ba6b6c0a529595abb02c569c99763203f3964cc", - ), - "Windows": struct( - file_name = "bazelisk.exe", - url = "https://github.com/bazelbuild/bazelisk/releases/download/%s/bazelisk-windows-amd64.exe" % _BAZELISK_RELEASE, - sha256 = "31fa9fcf250fe64aa3c5c83b69d76e1e9571b316a58bb5c714084495623e38b0", - ), -} - -# Creates file "container/run_in_container.sh" which will be copied onto container -# to run the commands to run bazel and create the output tar -def _create_docker_cmd( - ctx, - os_name, - bazel_version, - config_repos, - outputs_tar, - use_default_project): - bazelisk_path = _ROOT_DIR[os_name] + "/bazelisk/" + _BAZELISK_DOWNLOAD_INFO[os_name].file_name - - # Set permissions on bazelisk - bazelisk_cmd = "chmod +x " + bazelisk_path - - # Command to recursively convert soft links to hard links in the config_repos - # Needed because some outputs of local_cc_config (e.g., dummy_toolchain.bzl) - # could be symlinks. - # Here we need to find the correct find binary, on Windows there may be a find program - # on the PATH at C:\Windows\system32\find that occurs before the one from the bash installation - deref_symlinks_cmd = ["find_bin=$(which -a find | grep -v system32 | head -1)"] - for config_repo in config_repos: - symlinks_cmd = ("$find_bin $(" + bazelisk_path + " info output_base)/" + - _EXTERNAL_FOLDER_PREFIX + config_repo + - " -type l -exec bash -c 'ln -f \"$(readlink -m \"$0\")\" \"$0\"' {} \\;") - deref_symlinks_cmd.append(symlinks_cmd) - deref_symlinks_cmd = " && ".join(deref_symlinks_cmd) - - # Command to copy produced toolchain configs to a tar at the root - # of the container. - output_dir = _ROOT_DIR[os_name] + "/" + _OUTPUT_DIR - copy_cmd = ["mkdir " + output_dir] - for config_repo in config_repos: - src_dir = "$(" + bazelisk_path + " info output_base)/" + _EXTERNAL_FOLDER_PREFIX + config_repo - copy_cmd.append("cp -dr " + src_dir + " " + output_dir) - copy_cmd.append("tar -cf /" + outputs_tar + " -C " + output_dir + "/ . ") - output_copy_cmd = " && ".join(copy_cmd) - - # A success command to run after the output_copy_cmd finished. - # the contents of this echo line are checked for in extract.sh.tpl - success_echo_cmd = "echo 'created outputs_tar'" - - # if use_default_project was selected, we need to modify the WORKSPACE and BUILD file - setup_default_project_cmd = ["cd ."] - if use_default_project: - setup_default_project_cmd += ["cd " + _ROOT_DIR[os_name] + "/" + _PROJECT_REPO_DIR] - setup_default_project_cmd += ["mv BUILD.sample BUILD"] - setup_default_project_cmd += ["touch WORKSPACE"] - - bazel_cmd = "cd " + _ROOT_DIR[os_name] + "/" + _PROJECT_REPO_DIR - - # For each config repo we run the target @//... - bazel_targets = "@" + "//... @".join(config_repos) + "//..." - - # TODO(sunjayBhatia): this can be removed once Bazel 3.1.0 and below are out of support - # See: https://github.com/bazelbuild/bazel/issues/11101 - bazel_version_split = bazel_version.split(".") - if os_name == "Windows" and (bazel_version_split[0] < "3" or ((bazel_version_split[0] == "3" and bazel_version_split[1] < "2"))): - bazel_targets += " -- -@local_config_cc//:link_dynamic_library" - - bazel_cmd += " && " + bazelisk_path + " build " + bazel_targets - - # Command to run to clean up after autoconfiguration. - # we start with "cd ." to make sure in case of failure everything after the - # ";" will be executed - clean_cmd = "cd . ; " + bazelisk_path + " clean" - if use_default_project: - clean_cmd += "; rm WORKSPACE ; mv BUILD BUILD.sample" - - docker_cmd = [ - "#!/bin/bash", - "set -ex", - ctx.attr.setup_cmd, - ] - docker_cmd += [bazelisk_cmd] - docker_cmd += setup_default_project_cmd - docker_cmd += [ - bazel_cmd, - deref_symlinks_cmd, - output_copy_cmd, - success_echo_cmd, - clean_cmd, - ] - ctx.file("container/run_in_container.sh", "\n".join(docker_cmd), True) - -def pull_container_needed(ctx): - """Returns whether or not pulling a container is needed. - - Args: - ctx: the Bazel context object. - - Returns: - Returns true if its necesary to pull a container to generate configs. - """ - - # We don't pull a container if we have found a config_version to use - # and there was no tag and no request to detect java home - if ctx.attr.config_version and not ctx.attr.detect_java_home and not ctx.attr.tag: - return False - - # No need to pull if no cc configs or custom repos were requested and - # java_home is set - if not ctx.attr.create_cc_configs and ctx.attr.java_home and not ctx.attr.config_repos: - return False - return True - -def pull_image(ctx, docker_tool_path, image_name): - """Pulls an image using 'docker pull'. - - Args: - ctx: the Bazel context object. - docker_tool_path: path to the docker binary. - image_name: name of the image to pull. - """ - ctx.report_progress("pulling image %s." % image_name) - result = ctx.execute([docker_tool_path, "pull", image_name]) - print_exec_results("pull image", result, fail_on_error = True) - ctx.report_progress("image pulled.") - - # Create a dummy file with the image name to enable testing - # if container was pulled - ctx.file("image_name", """# Test file created to signal container was pulled -%s""" % image_name, False) - -def get_java_home(ctx, docker_tool_path, image_name): - """Gets the value of java_home. - - Gets the value of java_home either from attr or - by running docker run image_name printenv JAVA_HOME. - - Args: - ctx: the Bazel context object. - docker_tool_path: path to the docker binary. - image_name: name of the image to pull. - - Returns: - Returns the java_home. - """ - if ctx.attr.java_home: - return ctx.attr.java_home - elif ctx.attr.detect_java_home: - # Create the template to run - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:get_java_home.sh.tpl")) - ctx.template( - "get_java_home.sh", - template, - { - "%{docker_tool_path}": docker_tool_path, - "%{image_name}": image_name, - }, - True, - ) - - # run get_java_home.sh - result = ctx.execute(["bash", "./get_java_home.sh"]) - print_exec_results("get java_home", result, fail_on_error = True) - java_home = result.stdout.splitlines()[0] - if java_home == "": - fail("Could not find JAVA_HOME in the container and one was not " + - "passed to rbe_autoconfig rule. JAVA_HOME is required because " + - "create_java_configs is set to True") - return java_home - elif ctx.attr.export_configs: - fail(("%s failed: export_configs was set but neither java_home nor " + - "detect_java_home was set.") % ctx.attr.name) - else: - return None - -def get_java_version(ctx, docker_tool_path, image_name, java_home): - """Gets the release version of Java runtime. - - Gets the release version of Java runtime either from attr or - by running docker run image_name java -XshowSettings:properties. - - Args: - ctx: the Bazel context object. - docker_tool_path: path to the docker binary. - image_name: name of the image to pull. - java_home: java_home. - - Returns: - Returns the release version of Java runtime. - """ - if ctx.attr.java_version: - return ctx.attr.java_version - elif docker_tool_path: - properties_out = ctx.execute([ - docker_tool_path, - "run", - "--entrypoint", - java_home + "/bin/java", - image_name, - "-XshowSettings:properties", - ]).stderr - # This returns an indented list of properties separated with newlines: - # " java.vendor.url.bug = ... \n" - # " java.version = 11.0.8\n" - # " java.version.date = 2020-11-05\" - - strip_properties = [property.strip() for property in properties_out.splitlines()] - version_property = [property for property in strip_properties if property.startswith("java.version = ")] - if len(version_property) != 1: - return "unknown" - - version_value = version_property[0][len("java.version = "):] - (major, minor, rest) = version_value.split(".", 2) - - if major == "1": # handles versions below 1.8 - return minor - return major - elif ctx.attr.export_configs: - fail(("%s failed: export_configs was set but neither java_version nor " + - "detect_java_home was set.") % ctx.attr.name) - return "unknown" - -def run_and_extract( - ctx, - bazel_version, - bazel_rc_version, - config_repos, - docker_tool_path, - image_name, - project_root, - use_default_project): - """Runs the container and extracts the toolchain configs. - - Runs the container (creates command to run inside container) and extracts the - toolchain configs. - - Args: - ctx: the Bazel context object. - bazel_version: Version string of the Bazel release. - bazel_rc_version: The RC version of the Bazel release if the given - Bazel release is a RC. - config_repos: Optional. list of additional external repos corresponding to - configure like repo rules that need to be produced in addition to - local_config_cc - docker_tool_path: path to the docker binary. - image_name: name of the image to pull. - project_root: the absolute path to the root of the project that will - be copied to the container - use_default_project: whether or not to use the default project to generate configs - """ - outputs_tar = ctx.attr.name + "_out.tar" - - os_name = os_family(ctx) - - # Create command to run inside docker container - _create_docker_cmd( - ctx, - os_name = os_name, - bazel_version = bazel_version, - config_repos = config_repos, - outputs_tar = outputs_tar, - use_default_project = use_default_project, - ) - - # Download bazelisk - ctx.download( - _BAZELISK_DOWNLOAD_INFO[os_name].url, - "bazelisk/" + _BAZELISK_DOWNLOAD_INFO[os_name].file_name, - _BAZELISK_DOWNLOAD_INFO[os_name].sha256, - ) - - # Create the docker run flags to set env vars - docker_run_flags = [] - for env in ctx.attr.env: - docker_run_flags += ["--env", env + "=" + ctx.attr.env[env]] - bazel_version_string = bazel_version - if bazel_rc_version: - bazel_version_string += "rc" + str(bazel_rc_version) - - # Set the Bazel version that Bazelisk will use - docker_run_flags += ["--env", ("USE_BAZEL_VERSION=%s" % bazel_version_string)] - - # Override the user in case a default set in the container image - docker_run_flags += ["--user", _DOCKER_RUN_USER[os_name]] - - # Command to copy resources used for rbe_autoconfig to the container. - copy_data_cmd = [] - - # Command to clean up the data volume container. - clean_data_volume_cmd = "" - - # Set up destionation paths for assets we add to container - asset_root_dir = _ROOT_DIR[os_name] - project_root_dest = asset_root_dir + "/" + _PROJECT_REPO_DIR - run_container_dir_dest = asset_root_dir + "/container" - bazelisk_dest = asset_root_dir + "/bazelisk" - - # docker cp does not function on Windows as expected when copying into volumes so we use bind - # mounts instead - if os_name == "Windows": - copy_data_cmd.append("cp -arL " + project_root + " " + str(ctx.path("cc-sample-project"))) - docker_run_flags += ["-v", str(ctx.path("cc-sample-project")) + ":" + project_root_dest] - docker_run_flags += ["-v", str(ctx.path("container")) + ":" + run_container_dir_dest] - docker_run_flags += ["-v", str(ctx.path("bazelisk")) + ":" + bazelisk_dest] - else: - copy_data_cmd.append("data_volume=$(docker create -v " + asset_root_dir + " " + image_name + ")") - copy_data_cmd.append(docker_tool_path + " cp $(realpath " + project_root + ") $data_volume:" + project_root_dest) - copy_data_cmd.append(docker_tool_path + " cp " + str(ctx.path("container")) + " $data_volume:" + run_container_dir_dest) - copy_data_cmd.append(docker_tool_path + " cp " + str(ctx.path("bazelisk")) + " $data_volume:" + bazelisk_dest) - docker_run_flags += ["--volumes-from", "$data_volume"] - clean_data_volume_cmd = docker_tool_path + " rm $data_volume" - - # Create the template to run - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:extract.sh.tpl")) - ctx.template( - "run_and_extract.sh", - template, - { - "%{clean_data_volume_cmd}": clean_data_volume_cmd, - "%{commands}": "bash " + run_container_dir_dest + "/run_in_container.sh", - "%{copy_data_cmd}": " && ".join(copy_data_cmd), - "%{docker_run_flags}": " ".join(docker_run_flags), - "%{docker_tool_path}": docker_tool_path, - "%{extract_file}": "/" + outputs_tar, - "%{image_name}": image_name, - "%{output}": str(ctx.path(".")) + "/output.tar", - }, - True, - ) - - # run run_and_extract.sh - ctx.report_progress("running container") - result = ctx.execute(["bash", "./run_and_extract.sh"]) - print_exec_results("run_and_extract", result, fail_on_error = True) - - # Expand outputs inside this remote repo - result = ctx.execute(["tar", "-xf", "output.tar"]) - print_exec_results("expand_tar", result) - - result = ctx.execute(["bash", "-c", ("mv ./local_config_cc ./%s" % CC_CONFIG_DIR)]) - print_exec_results("move local_config_cc files", result) - result = ctx.execute(["bash", "-c", ("rm ./%s/WORKSPACE" % CC_CONFIG_DIR)]) - print_exec_results("clean local_config_cc WORKSPACE", result) - result = ctx.execute(["bash", "-c", ("rm ./%s/tools -drf" % CC_CONFIG_DIR)]) - print_exec_results("clean tools in local_config_cc", result) diff --git a/rules/rbe_repo/extract.sh.tpl b/rules/rbe_repo/extract.sh.tpl deleted file mode 100644 index 90118d437..000000000 --- a/rules/rbe_repo/extract.sh.tpl +++ /dev/null @@ -1,50 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -set -ex - -# This is a generated file that runs a docker container, waits for it to -# finish running and copies a file to an output location. - -DOCKER="%{docker_tool_path}" - -# Check docker tool is available -if [[ -z "${DOCKER}" ]]; then - echo >&2 "error: docker not found; do you need to set DOCKER_PATH env var?" - exit 1 -fi - -# In system where bind mounting is not supported/allowed, we need to copy the -# scripts and project source code used for Bazel autoconfig to the container. -%{copy_data_cmd} - -# Pass an empty entrypoint to override any set by default in the container. -id=$("${DOCKER}" run -d --entrypoint "" %{docker_run_flags} %{image_name} %{commands}) - -"${DOCKER}" wait $id -# Check the docker logs contain the expected 'created outputs_tar' string -if "${DOCKER}" logs $id | grep -q 'created outputs_tar'; then - echo "Successfully created outputs_tar" -else - echo "Could not create outputs_tar, see docker log for details:" - echo $("${DOCKER}" logs $id) - exit 1 -fi -"${DOCKER}" cp $id:%{extract_file} %{output} -"${DOCKER}" rm $id - -# If a data volumn is created, delete it at the end. -%{clean_data_volume_cmd} diff --git a/rules/rbe_repo/get_java_home.sh.tpl b/rules/rbe_repo/get_java_home.sh.tpl deleted file mode 100644 index ade88af1f..000000000 --- a/rules/rbe_repo/get_java_home.sh.tpl +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -set -ex - -# This is a generated file that gets the value of the JAVA_HOME env -# var in a docker image. - -DOCKER="%{docker_tool_path}" - -# Check docker tool is available -if [[ -z "${DOCKER}" ]]; then - echo >&2 "error: docker not found; do you need to set DOCKER_PATH env var?" - exit 1 -fi - -echo $(${DOCKER} inspect -f '{{range $i, $v := .Config.Env}}{{println $v}}{{end}}' %{image_name} | grep JAVA_HOME | cut -d'=' -f2) diff --git a/rules/rbe_repo/outputs.bzl b/rules/rbe_repo/outputs.bzl deleted file mode 100644 index 6e80497c5..000000000 --- a/rules/rbe_repo/outputs.bzl +++ /dev/null @@ -1,232 +0,0 @@ -# Copyright 2017 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. -"""Utils to process outputs to output_base in rbe_autoconf.""" - -load( - "//rules/rbe_repo:util.bzl", - "CC_CONFIG_DIR", - "JAVA_CONFIG_DIR", - "PLATFORM_DIR", - "print_exec_results", -) -load( - "//rules/rbe_repo:toolchain_config_suite_spec.bzl", - "string_lists_to_config", -) - -def expand_outputs(ctx, bazel_version, project_root, toolchain_config_spec_name): - """Copies all outputs of the autoconfig rule to a directory in the project. - - Also deletes the artifacts from the repo directory as they are only - meant to be used from the output_base. - - Args: - ctx: The Bazel context. - bazel_version: The Bazel version string. - project_root: The output directory where configs will be copied to. - toolchain_config_spec_name: provided/selected name for the toolchain config spec - """ - ctx.report_progress("copying outputs to project directory") - dest = project_root + "/" + ctx.attr.toolchain_config_suite_spec["output_base"] - if toolchain_config_spec_name: - dest += "/" + toolchain_config_spec_name - dest += "/bazel_" + bazel_version + "/" - platform_dest = dest + PLATFORM_DIR + "/" - java_dest = dest + JAVA_CONFIG_DIR + "/" - cc_dest = dest + CC_CONFIG_DIR + "/" - - # Create the directories - result = ctx.execute(["mkdir", "-p", platform_dest]) - print_exec_results("create platform output dir", result) - - files_to_clean = [] - - # Copy the local_config_cc files to dest/{CC_CONFIG_DIR}/ - if ctx.attr.create_cc_configs: - result = ctx.execute(["mkdir", "-p", cc_dest]) - print_exec_results("create cc output dir", result) - - # Get the files that were created in the CC_CONFIG_DIR - cc_conf_files = _get_cc_conf_files(ctx) - files_to_clean += cc_conf_files - args = ["cp"] + cc_conf_files + [cc_dest] - result = ctx.execute(args) - print_exec_results("copy local_config_cc outputs", result, True, args) - - # Copy the dest/{JAVA_CONFIG_DIR}/BUILD file - if ctx.attr.create_java_configs: - result = ctx.execute(["mkdir", "-p", java_dest]) - print_exec_results("create java output dir", result) - args = ["cp", str(ctx.path(JAVA_CONFIG_DIR + "/BUILD")), java_dest] - result = ctx.execute(args) - print_exec_results("copy java_runtime BUILD", result, True, args) - - # Copy the dest/{PLATFORM_DIR}/BUILD file - args = ["cp", str(ctx.path(PLATFORM_DIR + "/BUILD")), platform_dest] - result = ctx.execute(args) - print_exec_results("copy platform BUILD", result, True, args) - files_to_clean += ["./" + PLATFORM_DIR + "/BUILD"] - - # Copy any additional external repos that were requested - if ctx.attr.config_repos: - for repo in ctx.attr.config_repos: - args = ["bash", "-c", "cp -r %s %s" % (repo, dest)] - result = ctx.execute(args) - print_exec_results("copy %s repo files" % repo, result, True, args) - files_to_clean += ["./" + repo + "/*"] - - # Delete the outputs - args = ["bash", "-c", "rm -dr " + " ".join(files_to_clean)] - result = ctx.execute(args) - print_exec_results("Remove generated files from repo dir", result, True, args) - - dest_target = ctx.attr.toolchain_config_suite_spec["output_base"] - if toolchain_config_spec_name: - dest_target += "/" + toolchain_config_spec_name - dest_target += "/bazel_" + bazel_version - template = ctx.path(Label("@bazel_toolchains//rules/rbe_repo:.latest.bazelrc.tpl")) - ctx.template( - ".latest.bazelrc", - template, - { - "%{dest_target}": dest_target, - }, - False, - ) - args = ["mv", str(ctx.path("./.latest.bazelrc")), project_root + "/" + ctx.attr.toolchain_config_suite_spec["output_base"] + "/"] - result = ctx.execute(args) - print_exec_results("Move .latest.bazelrc file to outputs", result, True, args) - - # Create an empty BUILD file so the repo can be built - ctx.file("BUILD", """package(default_visibility = ["//visibility:public"])""", False) - -def create_configs_tar(ctx): - """Copies all outputs of the autoconfig rule to a tar file. - - Produces an configs.tar file at the root of the external repo with all contents. - - Args: - ctx: The Bazel context. - """ - files_to_tar = [] - if ctx.attr.create_cc_configs: - files_to_tar += _get_cc_conf_files(ctx) - if ctx.attr.create_java_configs: - files_to_tar += ["./" + JAVA_CONFIG_DIR + "/BUILD"] - files_to_tar += ["./" + PLATFORM_DIR + "/BUILD"] - if ctx.attr.config_repos: - for repo in ctx.attr.config_repos: - files_to_tar += ["./" + repo + "/*"] - - # Create a tar file with all outputs - args = ["bash", "-c", "tar -cvf configs.tar " + " ".join(files_to_tar)] - result = ctx.execute(args) - print_exec_results("Create configs.tar with all generated files", result, True, args) - - # Create an empty BUILD file so the repo can be built - ctx.file("BUILD", """package(default_visibility = ["//visibility:public"]) -exports_files(["configs.tar"])""", False) - -def _get_cc_conf_files(ctx): - """Gets the paths for all C/C++ toolchain config files - - Args: - ctx: The Bazel context. - - Returns: - List with paths to all C/C++ toolchain config files - """ - cc_conf_files = None - if ctx.attr.create_cc_configs: - # Get the files that were created in the CC_CONFIG_DIR - ctx.file("local_config_files.sh", ("echo $(find ./%s -type f | sort -n)" % CC_CONFIG_DIR), True) - result = ctx.execute(["bash", "./local_config_files.sh"]) - print_exec_results("resolve autoconf files", result) - cc_conf_files = result.stdout.splitlines()[0].split(" ") - return cc_conf_files - -def create_versions_file(ctx, toolchain_config_spec_name, digest, java_home, java_version, project_root): - """Creates the versions.bzl file. - - Args: - ctx: The Bazel context. - digest: The digest of the container that was pulled to generate configs. - project_root: The output directory where the versions.bzl file will be copied to. - toolchain_config_spec_name: provided/selected name for the configs - java_home: the provided/selected location for java_home - java_version: the provided/selected version of Java - """ - - # un-flatten rbe_repo_configs - versions_output = ["# Generated file, do not modify by hand"] - versions_output += ["# Generated by '%s' rbe_autoconfig rule" % ctx.attr.name] - versions_output += ["\"\"\"Definitions to be used in rbe_repo attr of an rbe_autoconf rule \"\"\""] - configs_list = [] - - # Create the list of config_repo structs - configs = string_lists_to_config(ctx, toolchain_config_spec_name, java_home, java_version) - index = 0 - default_toolchain_config_spec = None - for config in configs: - if config.name == ctx.attr.toolchain_config_suite_spec["default_toolchain_config_spec"]: - default_toolchain_config_spec = "toolchain_config_spec%s" % str(index) - versions_output += ["toolchain_config_spec%s = %s" % (str(index), str(config))] - configs_list += ["toolchain_config_spec%s" % str(index)] - index += 1 - - # If we did not find one, it probably was not set before, assign - # it to the first conifg - if not default_toolchain_config_spec: - default_toolchain_config_spec = "toolchain_config_spec0" - - # Update the ctx.attr.bazel_to_config_spec_names_map and - # ctx.attr.container_to_config_spec_names_map with the new generated - # config info - bazel_to_config_spec_names_map = ctx.attr.bazel_to_config_spec_names_map - if ctx.attr.bazel_version not in bazel_to_config_spec_names_map.keys(): - bazel_to_config_spec_names_map = dict(ctx.attr.bazel_to_config_spec_names_map) - bazel_to_config_spec_names_map.update({ctx.attr.bazel_version: [toolchain_config_spec_name]}) - if toolchain_config_spec_name not in bazel_to_config_spec_names_map[ctx.attr.bazel_version]: - bazel_to_config_spec_names_map = dict(bazel_to_config_spec_names_map.items()) - config_list = bazel_to_config_spec_names_map.pop(ctx.attr.bazel_version) + [toolchain_config_spec_name] - bazel_to_config_spec_names_map.update({ctx.attr.bazel_version: config_list}) - container_to_config_spec_names_map = ctx.attr.container_to_config_spec_names_map - if digest not in container_to_config_spec_names_map.keys(): - container_to_config_spec_names_map = dict(ctx.attr.container_to_config_spec_names_map.items()) - container_to_config_spec_names_map.update({digest: [toolchain_config_spec_name]}) - elif toolchain_config_spec_name not in container_to_config_spec_names_map[digest]: - configs = container_to_config_spec_names_map[digest] - container_to_config_spec_names_map = dict(ctx.attr.container_to_config_spec_names_map.items()) - container_to_config_spec_names_map.update({digest: configs + [toolchain_config_spec_name]}) - versions_output += ["_TOOLCHAIN_CONFIG_SPECS = [%s]" % ",".join(configs_list)] - versions_output += ["_BAZEL_TO_CONFIG_SPEC_NAMES = %s" % bazel_to_config_spec_names_map] - versions_output += ["LATEST = \"%s\"" % digest] - versions_output += ["CONTAINER_TO_CONFIG_SPEC_NAMES = %s" % container_to_config_spec_names_map] - versions_output += ["_DEFAULT_TOOLCHAIN_CONFIG_SPEC = %s" % default_toolchain_config_spec] - versions_output += ["TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct("] - versions_output += [" bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES,"] - versions_output += [" container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES,"] - versions_output += [" default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC,"] - versions_output += [" latest_container = LATEST,"] - versions_output += [" toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS,"] - versions_output += [" )"] - - ctx.file("versions.bzl", "\n".join(versions_output), False) - - # Export the versions file (if requested) - result = ctx.execute(["mkdir", "-p", project_root + "/" + ctx.attr.toolchain_config_suite_spec["output_base"] + "/"]) - print_exec_results("create output_base output dir", result) - args = ["mv", str(ctx.path("versions.bzl")), project_root + "/" + ctx.attr.toolchain_config_suite_spec["output_base"] + "/"] - result = ctx.execute(args) - print_exec_results("Move generated versions.bzl to output_base", result, True, args) diff --git a/rules/rbe_repo/toolchain_config_suite_spec.bzl b/rules/rbe_repo/toolchain_config_suite_spec.bzl deleted file mode 100644 index 1626e0e3f..000000000 --- a/rules/rbe_repo/toolchain_config_suite_spec.bzl +++ /dev/null @@ -1,486 +0,0 @@ -# Copyright 2017 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. -"""Utils for manipulating toolchain_config_suite_spec structs. - -In order to export configs, rbe_autoconfig requires an -toolchain_config_suite_spec with the following sample dict: - -YOUR_TOOLCHAIN_CONFIG_SUITE_SPEC = { - "repo_name": "toolchain_config_host", # The name of the bazel external repo that hosts configs - "output_base": "configs/test_configs", # The relative path under the root of external repo where - # toolchain configs are hosted - "container_repo": "google/bazel", # The repo where container for this config is pulled from - "container_registry": "marketplace.gcr.io", # The registry where container for this config is pulled from - "default_java_home": "/usr/lib/jvm/java-8-openjdk-amd64" # Optional. The default java_home to use - "toolchain_config_suite_autogen_spec": TOOLCHAIN_CONFIG_AUTOGEN_SPEC, -} - -The last field in this dict must point to the TOOLCHAIN_CONFIG_AUTOGEN_SPEC definition -in a versions.bzl file that is located in the 'output_base' of the 'repo_name'. - -This file will be read when a user wants to use checked-in configs. -It will be modified when a user wants to generate and export to the -output_base configs to be later on used as checked-in configs. - -The versions.bzl file should (initially) contain exactly these definitions: - ----- COPY LINES BELOW TO YOUR EMPTY versions.bzl FILE ---- - -_TOOLCHAIN_CONFIG_SPECS = [] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = "" - -# A map from supported Bazel versions mapped to supported config_spec names. -_BAZEL_TO_CONFIG_SPEC_NAMES = {} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "" - -# Map from sha256 of the toolchain container to corresponding config_spec names. -CONTAINER_TO_CONFIG_SPEC_NAMES = {} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) - ---- END OF COPY LINES BELOW TO YOUR EMPTY versions.bzl FILE ---- - -You can then load the versions.bzl file into the location where -you are declaring YOUR_RBE_REPO. - -This bzl file also provides utils to convert fields of the -toolchain_config_suite_autogen_spec structs in the versions.bzl to a format that can be passed -to the _rbe_autoconfig_impl. This is because we cannot pass -structs to _rbe_autoconfig_impl. -Defs 'config_to_string_lists' and 'string_lists_to_config' in this file -provide a way to convert an toolchain_config_specs in the toolchain_config_suite_autogen_spec -from structs to lists and from lists to structs. -""" - -load( - "//configs/ubuntu16_04_clang:versions.bzl", - toolchain_config_suite_autogen_spec = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) - -_SEPARATOR = ":::" - -REPO_SPEC_STRING_KEYS = [ - "container_repo", - "container_registry", - "output_base", - "repo_name", -] - -REPO_SPEC_KEYS = REPO_SPEC_STRING_KEYS + ["toolchain_config_suite_autogen_spec"] - -REPO_SPEC_ALL_KEYS = REPO_SPEC_KEYS + ["default_java_home", "default_java_version"] - -CONFIG_SPEC_FIELDS = [ - "bazel_to_config_spec_names_map", - "container_to_config_spec_names_map", - "default_toolchain_config_spec", - "latest_container", - "toolchain_config_specs", -] - -def default_toolchain_config_suite_spec(): - return { - "repo_name": "bazel_toolchains", - "output_base": "configs/ubuntu16_04_clang", - "container_repo": "google/rbe-ubuntu16-04", - "container_registry": "marketplace.gcr.io", - "default_java_home": "/usr/lib/jvm/java-8-openjdk-amd64", - "default_java_version": "8", - "toolchain_config_suite_autogen_spec": toolchain_config_suite_autogen_spec, - } - -def validate_toolchain_config_suite_spec(name, toolchain_config_suite_spec): - """ Validates the given toolchain_config_suite_spec is - -Should only be called from the rbe_autoconfig macro -in //rules/rbe_repo.bzl - - Args: - name: Name of the rbe_autoconfig rule - toolchain_config_suite_spec: The toolchain_config_suite_spec to validate - - """ - _validate_repo_spec_keys(name, toolchain_config_suite_spec) - _validate_toolchain_config_suite_autogen_spec(name, toolchain_config_suite_spec) - -# Validates the toolchain_config_suite_spec is a struct and has all required top level keys -def _validate_repo_spec_keys(name, toolchain_config_suite_spec): - if type(toolchain_config_suite_spec) != "dict": - fail("toolchain_config_suite_spec in %s is not a dict: '%s'" % (name, toolchain_config_suite_spec)) - for key in REPO_SPEC_KEYS: - if not toolchain_config_suite_spec.get(key): - fail("toolchain_config_suite_spec in %s does not contain required key '%s'" % (name, key)) - for key in toolchain_config_suite_spec.keys(): - if key not in REPO_SPEC_ALL_KEYS: - fail("toolchain_config_suite_spec in %s contain unnecessary key '%s'" % (name, key)) - - for key in REPO_SPEC_STRING_KEYS: - _check_type( - name = name, - expected_type = "string", - error_detail = ("It declares a '%s'" % key), - object_to_check = toolchain_config_suite_spec[key], - ) - if toolchain_config_suite_spec.get("default_toolchain_config_spec"): - _check_type( - name = name, - expected_type = "string", - error_detail = "It declares a 'default_toolchain_config_spec'", - object_to_check = toolchain_config_suite_spec["default_toolchain_config_spec"], - ) - -def _validate_toolchain_config_suite_autogen_spec(name, toolchain_config_suite_spec): - _check_type( - name = name, - expected_type = "struct", - error_detail = "It declares a 'toolchain_config_suite_autogen_spec'", - object_to_check = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"], - ) - - # validate the toolchain_config_suite_autogen_spec object is a struct with all required fields - for field in CONFIG_SPEC_FIELDS: - if not hasattr(toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"], field): - fail(("toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"] in %s does not contain " + - "required field '%s'") % (name, field)) - _validate_default_toolchain_config_spec(name, toolchain_config_suite_spec) - _validate_bazel_to_config_spec_names_map(name, toolchain_config_suite_spec) - _validate_container_to_config_spec_names_map(name, toolchain_config_suite_spec) - _validate_configs(name, toolchain_config_suite_spec) - -def _validate_default_toolchain_config_spec(name, toolchain_config_suite_spec): - if toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec != "": - _check_type( - name = name, - expected_type = "struct", - error_detail = "It declares a 'default_toolchain_config_spec'", - object_to_check = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec, - ) - if toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec != "": - _validate_config_version_spec(name, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec) - - # Check the default config is in the list of configs - if (toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec != "" and - toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec not in toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].toolchain_config_specs): - fail(("%s has a toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"] field 'default_toolchain_config_spec' " + - "with value '%s' that is not in the 'toolchain_config_specs' list: '%s'. " + - "'%s' was passed as value.") % - (name, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].default_toolchain_config_spec, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].toolchain_config_specs)) - -def _validate_bazel_to_config_spec_names_map(name, toolchain_config_suite_spec): - _check_type( - name = name, - expected_type = "dict", - error_detail = "It declares a 'bazel_to_config_spec_names_map'", - object_to_check = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map, - ) - for value in toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].bazel_to_config_spec_names_map.values(): - _check_type( - name = name, - expected_type = "list", - error_detail = "It declares a 'bazel_to_config_spec_names_map' value", - object_to_check = value, - ) - -def _validate_container_to_config_spec_names_map(name, toolchain_config_suite_spec): - _check_type( - name = name, - expected_type = "dict", - error_detail = "It declares a 'container_to_config_spec_names_map'", - object_to_check = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map, - ) - for value in toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map.values(): - _check_type( - name = name, - expected_type = "list", - error_detail = "It declares a 'container_to_config_spec_names_map' value", - object_to_check = value, - ) - for key in toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map.keys(): - if not key.startswith("sha256:"): - fail(("%s has a toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"] field 'container_to_config_spec_names_map' " + - "that has a key that is not a valid image sha that starts with 'sha256:'. " + - "'%s' was passed as value.") % - (name, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map)) - if (toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container != "" and - not toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container.startswith("sha256:")): - fail(("%s has a toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"] field 'latest_container' " + - "that is neither an empty string or a valid sha of an image that " + - "starts with 'sha256:'. '%s' was passed as value.") % - (name, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container)) - if (toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container != "" and - toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map != {} and - toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container not in toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map.keys()): - fail(("%s has a toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"] field 'latest_container' " + - "with value '%s', which is not a key in the " + - "container_to_config_spec_names_map '%s'") % - (name, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].latest_container, toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].container_to_config_spec_names_map)) - -def _validate_configs(name, toolchain_config_suite_spec): - # Validate all configs in toolchain_config_specs - _check_type( - name = name, - expected_type = "list", - error_detail = "It declares a 'toolchain_config_specs'", - object_to_check = toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].toolchain_config_specs, - ) - for config_version_spec in toolchain_config_suite_spec["toolchain_config_suite_autogen_spec"].toolchain_config_specs: - _validate_config_version_spec(name, config_version_spec) - -def _validate_config_version_spec(name, config_version_spec): - """Validates a single config_version_spec """ - _check_type( - name = name, - expected_type = "struct", - error_detail = "It declares a 'config_version_spec'", - object_to_check = config_version_spec, - ) - required_fields = [ - "name", - "java_home", - "create_java_configs", - "create_cc_configs", - "config_repos", - "env", - ] - for field in required_fields: - if not hasattr(config_version_spec, field): - fail(("%s has a toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"] field that " + - "includes '%s' that is not a valid config_version_spec " + - "as its missing field '%s'. ") % - (name, config_version_spec, field)) - error_detail_prefix = (("It declares '%s', that is not a valid config_version_spec as has ") % - (config_version_spec)) - _check_type( - name = name, - expected_type = "string", - error_detail = error_detail_prefix + "a name", - object_to_check = config_version_spec.name, - ) - _check_type( - name = name, - expected_type = "string" if config_version_spec.create_java_configs else "NoneType", - error_detail = error_detail_prefix + "a java_home", - object_to_check = config_version_spec.java_home, - ) - _check_type( - name = name, - expected_type = "bool", - error_detail = error_detail_prefix + "a create_java_configs", - object_to_check = config_version_spec.create_java_configs, - ) - _check_type( - name = name, - expected_type = "bool", - error_detail = error_detail_prefix + "a create_cc_configs", - object_to_check = config_version_spec.create_cc_configs, - ) - _check_type( - name = name, - expected_type = "list", - error_detail = error_detail_prefix + "a config_repos", - object_to_check = config_version_spec.config_repos, - ) - for config_repo_entry in config_version_spec.config_repos: - _check_type( - name = name, - expected_type = "string", - error_detail = error_detail_prefix + "a config_repos that has an item", - object_to_check = config_repo_entry, - ) - _check_type( - name = name, - expected_type = "dict", - error_detail = error_detail_prefix + "an env", - object_to_check = config_version_spec.env, - ) - for key in config_version_spec.env.keys(): - _check_type( - name = name, - expected_type = "string", - error_detail = error_detail_prefix + "an env that has a key", - object_to_check = key, - ) - for value in config_version_spec.env.values(): - _check_type( - name = name, - expected_type = "string", - error_detail = error_detail_prefix + "an env that has a value", - object_to_check = value, - ) - -def config_to_string_lists(toolchain_config_specs): - """Creates a struct with lists from the given toolchain_config_specs - - Args: - toolchain_config_specs: List with structs. Each represents a repo config - with 'name' (str), 'java_home'(str), 'create_java_configs' (bool), - 'create_cc_configs' (bool). 'config_repos' (string list) and 'env' (dict). - - Returns: - A struct with all lists containing data from toolchain_config_specs. - """ - names = [] - java_home = [] - java_version = [] - create_java_configs = [] - create_cc_configs = [] - config_repos = [] - env_keys = [] - env_values = [] - - for toolchain_config_spec in toolchain_config_specs: - names += [toolchain_config_spec.name] - java_home += [toolchain_config_spec.java_home] - java_version += [toolchain_config_spec.java_version] - create_java_configs += ["non_empty" if toolchain_config_spec.create_java_configs else ""] - create_cc_configs += ["non_empty" if toolchain_config_spec.create_cc_configs else ""] - config_repos += [_SEPARATOR.join(toolchain_config_spec.config_repos)] - env_keys += [_SEPARATOR.join(toolchain_config_spec.env.keys())] - - # Error out if any of the env values contains the separator - for env_val in toolchain_config_spec.env.values(): - if len(env_val.split(_SEPARATOR)) > 1: - fail(("rbe_autoconfig encountered an error processing '%s', '%s' " + - "was set as value for an environment key. This value " + - "includes '%s' which is unsupported in rbe_autoconfig") % - (str(toolchain_config_specs), env_val, _SEPARATOR)) - env_values += [_SEPARATOR.join(toolchain_config_spec.env.values())] - - return struct( - names = names, - java_home = java_home, - java_version = java_version, - create_java_configs = create_java_configs, - create_cc_configs = create_cc_configs, - config_repos = config_repos, - env_keys = env_keys, - env_values = env_values, - ) - -def string_lists_to_config(ctx, requested_toolchain_config_spec_name, java_home, java_version): - """Creates a list of structs with repo configs - - Args: - ctx: the Bazel context object. - requested_toolchain_config_spec_name: provided/selected name for the configs - java_home: The provided/selected location of java_home. - java_version: The provided/selected version of Java. - - Returns: - A list with structs, each an repo config with 'name' - (str), 'java_home'(str), 'create_java_configs' (bool), - 'create_cc_configs' (bool). 'config_repos' (string list) - and 'env' (dict). - """ - new_config = True - configs = [] - env_list = [] - index = 0 - for toolchain_config_spec_name in ctx.attr.configs_obj_names: - config_repos = ctx.attr.configs_obj_config_repos[index].split(_SEPARATOR) - if config_repos == [""]: - config_repos = [] - env_keys = ctx.attr.configs_obj_env_keys[index].split(_SEPARATOR) - env_values = ctx.attr.configs_obj_env_values[index].split(_SEPARATOR) - if env_keys == [""]: - env_keys = [] - env_tuples = [] - env_index = 0 - for key in env_keys: - env_tuples += [(key, env_values[env_index])] - env_index += 1 - config = struct( - name = toolchain_config_spec_name, - java_home = ctx.attr.configs_obj_java_home[index] if ctx.attr.configs_obj_java_home and ctx.attr.configs_obj_java_home[index] else None, - java_version = ctx.attr.configs_obj_java_version[index] if ctx.attr.configs_obj_java_version and ctx.attr.configs_obj_java_version[index] else None, - create_java_configs = True if ctx.attr.configs_obj_create_java_configs[index] else False, - create_cc_configs = True if ctx.attr.configs_obj_create_cc_configs[index] else False, - config_repos = config_repos, - env = dict(env_tuples), - ) - configs += [config] - if toolchain_config_spec_name == requested_toolchain_config_spec_name: - new_config = False - _check_config(ctx, config) - index += 1 - - # If the config provided/selected is not in the existing ones, add it - if new_config: - configs += [struct( - name = requested_toolchain_config_spec_name, - java_home = java_home, - java_version = java_version, - create_java_configs = ctx.attr.create_java_configs, - create_cc_configs = ctx.attr.create_cc_configs, - config_repos = ctx.attr.config_repos, - env = ctx.attr.env, - )] - return configs - -# Fail if the config defined by the user in the ctx/selected by default -# does not match details of the one in versions.bzl -def _check_config(ctx, config): - if ctx.attr.env != config.env: - fail(("%s failed. '%s' was passed as env and '%s' was " + - "provided/selected as toolchain_config_spec_name but the provided/selected " + - "toolchain_config_specs had set '%s' as env. Either set the env attr " + - "properly in the rule or set a different toolchain_config_spec_name " + - "explicitly") % (ctx.attr.name, str(ctx.attr.env), config.name, str(config.env))) - - if ctx.attr.config_repos != config.config_repos: - fail(("%s failed. '%s' was passed as config_repos and '%s' was " + - "provided/selected as toolchain_config_spec_name but the provided/selected " + - "toolchain_config_specs had set '%s' as config_repos. Either set " + - "the config_repos attr properly in the rule or set a different " + - "toolchain_config_spec_name explicitly") % (ctx.attr.name, str(ctx.attr.config_repos), config.name, str(config.config_repos))) - - if ctx.attr.create_java_configs != config.create_java_configs: - fail(("%s failed. '%s' was passed as create_java_configs and '%s' was " + - "provided/selected as toolchain_config_spec_name but the provided/selected " + - "toolchain_config_specs had set '%s' as create_java_configs. " + - "Either set the create_java_configs attr " + - "properly in the rule or set a different toolchain_config_spec_name " + - "explicitly") % (ctx.attr.name, str(ctx.attr.create_java_configs), config.name, str(config.create_java_configs))) - - if ctx.attr.create_cc_configs != config.create_cc_configs: - fail(("%s failed. '%s' was passed as create_cc_configs and '%s' was " + - "provided/selected as toolchain_config_spec_name but the provided/selected " + - "toolchain_config_specs had set '%s' as create_cc_configs. " + - "Either set the create_cc_configs attr " + - "properly in the rule or set a different toolchain_config_spec_name " + - "explicitly") % (ctx.attr.name, str(ctx.attr.create_cc_configs), config.name, str(config.create_cc_configs))) - -def _check_type( - name, - error_detail, - expected_type, - object_to_check): - if type(object_to_check) != expected_type: - fail(("{name} has an invalid toolchain_config_suite_spec[\"toolchain_config_suite_autogen_spec\"]. " + - "{error_detail} that is not a {expected_type}. " + - "Expected '{expected_type}' but got '{actual_type}'").format( - actual_type = type(object_to_check), - error_detail = error_detail, - expected_type = expected_type, - name = name, - )) diff --git a/rules/rbe_repo/util.bzl b/rules/rbe_repo/util.bzl deleted file mode 100644 index 71a0e9ee3..000000000 --- a/rules/rbe_repo/util.bzl +++ /dev/null @@ -1,267 +0,0 @@ -# Copyright 2017 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. -"""Utils for rbe_autoconfig.""" - -load( - "//rules/rbe_repo:toolchain_config_suite_spec.bzl", - "default_toolchain_config_suite_spec", -) - -_VERBOSE = False -_SUPPORTED_OS_FAMILIES = ["Linux", "Windows"] - -DOCKER_PATH = "DOCKER_PATH" -CC_CONFIG_DIR = "cc" -JAVA_CONFIG_DIR = "java" -PLATFORM_DIR = "config" -AUTOCONF_ROOT = "RBE_AUTOCONF_ROOT" - -def resolve_image_name(ctx): - """ - Gets the image name. - - If the image corresponds to the - one in the default_toolchain_config_suite_spec, replaces - the login required endpoint (marketplace.gcr.io) - with the public access endpoint (l.gcr.io) - - Args: - ctx: the Bazel context object. - - Returns: - the name of the image - """ - - image_name = None - if ctx.attr.digest: - image_name = ctx.attr.registry + "/" + ctx.attr.repository + "@" + ctx.attr.digest - else: - image_name = ctx.attr.registry + "/" + ctx.attr.repository + ":" + ctx.attr.tag - - if (ctx.attr.repository == default_toolchain_config_suite_spec()["container_repo"] and - ctx.attr.registry == default_toolchain_config_suite_spec()["container_registry"]): - # Use l.gcr.io registry to pull marketplace.gcr.io images to avoid auth - # issues for users who do not do gcloud login. - image_name = image_name.replace("marketplace.gcr.io", "l.gcr.io") - - return image_name - -def resolve_rbe_original_image_name(ctx, image_name): - """ - Resolves the original image name - - If the image corresponds to the one in the - default_toolchain_config_suite_spec, converts its name from using public - access endpoint (marketplace.gcr.io) to its login required endpoint - (l.gcr.io) - - Args: - ctx: the Bazel context object. - image_name: the name of the image. - - Returns: - the modified name of the image - """ - if (ctx.attr.repository == default_toolchain_config_suite_spec()["container_repo"] and - ctx.attr.registry == default_toolchain_config_suite_spec()["container_registry"]): - return image_name.replace("l.gcr.io", "marketplace.gcr.io") - return image_name - -def resolve_project_root(ctx): - """Returns the project_root . - - Returns the project_root that will be used to copy sources - to the container (if needed) and whether or not the default cc project - was selected. - - Args: - ctx: the Bazel context object. - - Returns: - mount_project_root - path to mount/copy to the container to execute command to generate external repos - export_project_root - path to export produced configs to - """ - - if ctx.attr.config_version: - return None, None, None - - export_project_root = None - mount_project_root = None - use_default_project = False - - # If not using checked-in configs and either export configs was selected or - # config_repos were requested we need to resolve the path to the project root - # using the env variable. - if ctx.attr.export_configs or ctx.attr.config_repos: - # We need AUTOCONF_ROOT to be set to either export or copy to the container - project_root = ctx.os.environ.get(AUTOCONF_ROOT, None) - - # TODO (nlopezgi): validate _AUTOCONF_ROOT points to a valid Bazel project - if not project_root: - fail(("%s env variable must be set for rbe_autoconfig " + - "to function properly when export_configs is True " + - "or config_repos are set") % AUTOCONF_ROOT) - if ctx.attr.export_configs: - export_project_root = project_root - if ctx.attr.config_repos: - mount_project_root = project_root - if not ctx.attr.config_repos: - # If no config repos, we can use the default sample project - # TODO(nlopezgi): consider using native.existing_rules() to validate - # bazel_toolchains repo exists. - # Try to use the default project - # This is Bazel black magic, we're traversing the directories in the output_base, - # assuming that the bazel_toolchains external repo will exist in the - # expected path. - mount_project_root = ctx.path(".").dirname.get_child("bazel_toolchains").get_child("rules").get_child("cc-sample-project") - if not mount_project_root.exists: - fail(("Could not find default autoconf project in %s, please make sure " + - "the bazel-toolchains repo is imported in your workspace with name " + - "'bazel_toolchains' and imported before the rbe_autoconfig target " + - "declaration ") % str(project_root)) - mount_project_root = str(mount_project_root) - use_default_project = True - - return mount_project_root, export_project_root, use_default_project - -def os_family(ctx): - """Retrieve the OS Family of host environment - - Args: - ctx: the Bazel context object. - - Returns: - Returns the name of the OS Family - """ - os_name = ctx.os.name.lower() - if os_name.find("windows") != -1: - return "Windows" - if os_name == "linux": - return "Linux" - return os_name - -def validate_host(ctx): - """Perform validations of host environment to be able to run the rule. - - Args: - ctx: the Bazel context object. - - Returns: - Returns the path to the docker tool binary. - """ - os = os_family(ctx) - if os not in _SUPPORTED_OS_FAMILIES: - fail("Not running on supported OS, %s must be one of: %s" % (os, ",".join(_SUPPORTED_OS_FAMILIES))) - docker_tool_path = ctx.os.environ.get(DOCKER_PATH, None) - if not docker_tool_path: - docker_tool_path = ctx.which("docker") - if not docker_tool_path: - fail("Cannot run rbe_autoconfig as 'docker' was not found on the " + - "path and environment variable DOCKER_PATH was not set. " + - "rbe_autoconfig attempts to pull a docker container if a " + - "toolchain config was not found for the version of Bazel " + - "(selected via attr or implicitly identified). If you do " + - "not want rbe_autoconfig to ever attempt to pull a docker " + - "container, please use attr 'use_checked_in_confs = \"Force\"'.") - result = ctx.execute([docker_tool_path, "ps"]) - if result.return_code != 0: - fail("Cannot run rbe_autoconfig as running '%s ps' returned a " + - "non 0 exit code, please check you have permissions to " + - "run docker. Error message: %s" % docker_tool_path, result.stderr) - if not ctx.which("tar"): - fail("Cannot run rbe_autoconfig as 'tar' was not found on the path.") - print("Found docker tool in %s" % docker_tool_path) - return str(docker_tool_path) - -def print_exec_results(prefix, exec_result, fail_on_error = False, args = None): - """Convenience method to print results of execute. - - Convenience method to print results of execute when Verbose logging - is enabled. - Also provides functionality to fail on errors if needed. - Verbose logging is enabled via a global var in this bzl file - - Args: - prefix: A prefix to add to logs. - exec_result: The return value of ctx.execute(...). - fail_on_error: Default False. Whether to fail if exec_result contains an error - args: args passed to ctx.execute(...). - - """ - if _VERBOSE and exec_result.return_code != 0: - print(prefix + "::error::" + exec_result.stderr) - elif _VERBOSE: - print(prefix + "::success::" + exec_result.stdout) - if fail_on_error and exec_result.return_code != 0: - if _VERBOSE and args: - print("failed to run execute with the following args:" + str(args)) - fail("Failed to run:" + prefix + ":" + exec_result.stderr) - -def copy_to_test_dir(ctx): - """Copies contents of external repo test directory. - - Copies all contents of the external repo to a test directory, - modifies name of all BUILD files (to enable file_test to operate on them), and - creates a root BUILD file in test directory with a filegroup that contains - all files. - - Args: - ctx: the Bazel context object. - """ - - # Copy all files to the test directory, including the output into RBE_AUTOCONF_ROOT contents if available - copy_autoconf_root_command = "" - autoconf_root = ctx.os.environ.get(AUTOCONF_ROOT, None) - if autoconf_root: - copy_autoconf_root_command = "cp -r %s ./.test/rbe_autoconf_root &&" % autoconf_root - - args = ["bash", "-c", ("mkdir ./.test && cp -r ./* ./.test && %s mv ./.test ./test" % copy_autoconf_root_command)] - result = ctx.execute(args) - print_exec_results("copy test output files", result, True, args) - - # Rename BUILD files - ctx.file("rename_build_files.sh", "find ./test -name \"BUILD\" -exec sh -c 'mv \"$1\" \"$(dirname $1)/test.BUILD\"' _ {} \\;", True) - result = ctx.execute(["bash", "./rename_build_files.sh"]) - print_exec_results("Rename BUILD files in test output", result, True, args) - - # create a root BUILD file with a filegroup - ctx.file("test/BUILD", """package(default_visibility = ["//visibility:public"]) -exports_files(["empty"]) -filegroup( - name = "exported_testdata", - srcs = glob(["**/*"]), -) -""", False) - - # Create an empty file to reference in test. - # This is needed for tests to reference the location - # of all test outputs. - ctx.file("test/empty", "", False) - -def rbe_autoconfig_root_impl(ctx): - """Core implementation of rbe_autoconfig_root repository rule.""" - ctx.file("AUTOCONF_ROOT", ctx.os.environ.get(AUTOCONF_ROOT, None), False) - ctx.file("BUILD", """package(default_visibility = ["//visibility:public"]) -exports_files(["AUTOCONF_ROOT"]) -""", False) - -# Rule that exposes the location of AUTOCONF_ROOT for test -# rules to consume. -rbe_autoconfig_root = repository_rule( - environ = [ - AUTOCONF_ROOT, - ], - implementation = rbe_autoconfig_root_impl, - local = True, -) diff --git a/rules/rbe_repo/version_check.bzl b/rules/rbe_repo/version_check.bzl deleted file mode 100644 index ba3886452..000000000 --- a/rules/rbe_repo/version_check.bzl +++ /dev/null @@ -1,71 +0,0 @@ -# Copyright 2017 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. -""" Helpers to parse and check version of bazel.""" - -def extract_version_number(bazel_version_fallback): - """Extracts the semantic version number from a version string - - Args: - bazel_version_fallback: The bazel version to fall back to if the version - of Bazel running this function can't be - determined. - - Returns: - The semantic version string, like "1.2.3". - """ - bazel_version = _check_bazel_version(bazel_version_fallback) - for i in range(len(bazel_version)): - c = bazel_version[i] - if not (c.isdigit() or c == "."): - return bazel_version[:i] - return bazel_version - -def parse_rc(bazel_version): - """Parse the version string of the given Bazel RC version - - Args: - bazel_version: The Bazel version string. - - Returns: - The integer RC number if the given bazel version was a RC version or None. - """ - if bazel_version.find("rc") != -1: - rc = "" - for i in range(len(bazel_version) - bazel_version.find("rc") - 2): - c = bazel_version[i + bazel_version.find("rc") + 2] - if not c.isdigit(): - if rc == "": - return -1 - break - rc += c - return int(rc) - return None - -def _check_bazel_version(bazel_version_fallback): - if "bazel_version" not in dir(native): - fail("\nCurrent Bazel version is lower than 0.2.1 and is not supported with rbe_autoconfig.") - elif not native.bazel_version: - print(("\nCurrent running Bazel is not a release version and one " + - "was not defined explicitly in rbe_autoconfig target. " + - "Falling back to '%s'") % bazel_version_fallback) - return bazel_version_fallback - - # If running a release that is not an RC, print a warning if the - # fallback (latest known in this repo) is old - if (native.bazel_version.find("rc") == -1 and - native.bazel_version > bazel_version_fallback): - print("\nCurrent running Bazel is ahead of bazel-toolchains repo. " + - "Please update your pin to bazel-toolchains repo in your " + - "WORKSPACE file.") - return native.bazel_version diff --git a/rules/toolchain_containers.bzl b/rules/toolchain_containers.bzl deleted file mode 100644 index 539a9a65b..000000000 --- a/rules/toolchain_containers.bzl +++ /dev/null @@ -1,17 +0,0 @@ -"""Provides a function that maps from clang container names to the digest of -their latest available container. -""" - -def toolchain_container_sha256s(): - return { - ########################################################### - # Clang images # - ########################################################### - # marketplace.gcr.io/google/clang-debian8@sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395 - # Debian8 Clang configs are deprecated. No need to update this SHA for - # config release purpose anymore. - "debian8_clang": "sha256:e076c87e670f9a3c95e250268f160397d1cee482ec195d51e40b992b34198395", - - # marketplace.gcr.io/google/clang-ubuntu:latest - "ubuntu16_04_clang": "sha256:ed21de14f213a6dfe55c50663ae5f95c545ae0f8fce065a70ffe6d8bb260d8d6", - } diff --git a/tests/config/.bazelrc b/tests/config/.bazelrc deleted file mode 100644 index 3ef4a8f1f..000000000 --- a/tests/config/.bazelrc +++ /dev/null @@ -1,51 +0,0 @@ -# Copyright 2017 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. - -# The flags below enable running tests using Remote Build Execution -# for the provided toolchain. -# Note that your WORKSPACE must contain an rbe_autoconfig target with -# name="buildkite_config" to use these flags as-is. - -test:remote --remote_instance_name=projects/asci-toolchain/instances/default_instance - -# Depending on how many machines are in the remote execution instance, setting -# this higher can make builds faster by allowing more jobs to run in parallel. -# Setting it too high can result in jobs that timeout, however, while waiting -# for a remote machine to execute them. -test:remote --jobs=50 - -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -test:remote --extra_toolchains=@buildkite_config//config:cc-toolchain -test:remote --extra_execution_platforms=@buildkite_config//config:platform -test:remote --host_platform=@buildkite_config//config:platform -test:remote --platforms=@buildkite_config//config:platform - -# Starting with Bazel 0.27.0 strategies do not need to be explicitly -# defined. See https://github.com/bazelbuild/bazel/issues/7480 -test:remote --define=EXECUTOR=remote - -# Enable remote execution so actions are performed on the remote systems. -test:remote --remote_executor=remotebuildexecution.googleapis.com -test:remote --remote_cache=remotebuildexecution.googleapis.com - -# Enable authentication. This will pick up application default credentials by -# default. You can use --google_credentials=some_file.json to use a service -# account credential instead. -test:remote --google_default_credentials=true - -test:remote --remote_timeout=3600 -test:remote --keep_going diff --git a/tests/config/BUILD b/tests/config/BUILD deleted file mode 100644 index 367ea7972..000000000 --- a/tests/config/BUILD +++ /dev/null @@ -1,13 +0,0 @@ -# Copyright 2017 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. diff --git a/tests/config/autoconfig_test.sh b/tests/config/autoconfig_test.sh deleted file mode 100755 index 558f1f46d..000000000 --- a/tests/config/autoconfig_test.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -# Script to run the executable generated from a docker_toolchain_autoconfig rule -# and then check the toolchain configs for the c++ auto generated config exist. -# -# This script should be passed in 'srcs' of a sh_test test rule. The sh_test -# rule is expected to have the name {docker_toolchain_autoconfig_name}_test, -# where {docker_toolchain_autoconfig_name} is the docker_toolchain_autoconfig -# rule you would like to build and run. - -set -ex - -# Define constants. -WORKSPACE_ROOT=$(pwd) -# The test name is hardcoded as {docker_toolchain_autoconfig_name}_test. -TARGET=${TEST_BINARY%_test} - -# Unpack toolchain config tarball. -find . -tar -xf ${WORKSPACE_ROOT}/${TARGET}_outputs.tar -C ${TEST_TMPDIR} - -# Check existence of generated file. -file ${TEST_TMPDIR}/local_config_cc/CROSSTOOL -file ${TEST_TMPDIR}/local_config_cc/BUILD -file ${TEST_TMPDIR}/local_config_cc/cc_wrapper.sh -file ${TEST_TMPDIR}/local_config_cc/dummy_toolchain.bzl - -echo "PASS" diff --git a/tests/config/dependency-specs/ubuntu16_04_no_update.yaml b/tests/config/dependency-specs/ubuntu16_04_no_update.yaml deleted file mode 100644 index a8e051216..000000000 --- a/tests/config/dependency-specs/ubuntu16_04_no_update.yaml +++ /dev/null @@ -1,16 +0,0 @@ -# Location of the config-dependency tracker file on the repository -# specified in the Github spec YAML file to the toolchain configs update -# service. -revisionsFilePath: "test/config/dependency-tracking/no_updates.bzl" -gcrDeps: - # The copy of the RBE Ubuntu 16.04 toolchain container. - - name: "IMAGE" - location: "gcr.io/asci-toolchain/toolchain-configs-e2e-test/rbe-ubuntu16-04" - tag: "latest" - # The copy of the Ubuntu Bazel + Docker + Gcloud container which is tagged - # with the bazel version. - - name: "BAZEL" - location: "gcr.io/asci-toolchain/toolchain-configs-e2e-test/nosla-ubuntu16_04-bazel-docker-gcloud" - tag: "latest" - - diff --git a/tests/config/dependency-specs/ubuntu16_04_trigger_config_gen.yaml b/tests/config/dependency-specs/ubuntu16_04_trigger_config_gen.yaml deleted file mode 100644 index 04a85c9a9..000000000 --- a/tests/config/dependency-specs/ubuntu16_04_trigger_config_gen.yaml +++ /dev/null @@ -1,14 +0,0 @@ -# Location of the config-dependency tracker file on the repository -# specified in the Github spec YAML file to the toolchain configs update -# service. -revisionsFilePath: "tests/config/dependency-tracking/trigger_config_gen.bzl" -gcrDeps: - # The copy of the RBE Ubuntu 16.04 toolchain container. - - name: "IMAGE" - location: "gcr.io/asci-toolchain/toolchain-configs-e2e-test/rbe-ubuntu16-04" - tag: "latest" - # The copy of the Ubuntu Bazel + Docker + Gcloud container which is tagged - # with the bazel version. - - name: "BAZEL" - location: "gcr.io/asci-toolchain/toolchain-configs-e2e-test/nosla-ubuntu16_04-bazel-docker-gcloud" - tag: "latest" diff --git a/tests/config/dependency-tracking/BUILD b/tests/config/dependency-tracking/BUILD deleted file mode 100644 index 0df8756e3..000000000 --- a/tests/config/dependency-tracking/BUILD +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2017 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. - -load("@bazel_skylib//:bzl_library.bzl", "bzl_library") - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -bzl_library( - name = "dependency-tracking", - srcs = [ - "no_updates.bzl", - "trigger_config_gen.bzl", - ], -) diff --git a/tests/config/dependency-tracking/no_updates.bzl b/tests/config/dependency-tracking/no_updates.bzl deleted file mode 100644 index 5cb92e1ab..000000000 --- a/tests/config/dependency-tracking/no_updates.bzl +++ /dev/null @@ -1,6 +0,0 @@ -"""Information tracking the latest published configs.""" -bazel = "0.24.1" -registry = "gcr.io" -repository = "asci-toolchain/toolchain-configs-e2e-test/rbe-ubuntu16-04" -digest = "sha256:671d8b28e99c8a0a7aa2aaae072bf8e92c19def082b218ae46e209274cdd476e" -configs_version = "9.0.0" diff --git a/tests/config/dependency-tracking/trigger_config_gen.bzl b/tests/config/dependency-tracking/trigger_config_gen.bzl deleted file mode 100644 index 2d36a423e..000000000 --- a/tests/config/dependency-tracking/trigger_config_gen.bzl +++ /dev/null @@ -1,6 +0,0 @@ -"""Information tracking the latest published configs.""" -bazel = "0.24.0" -registry = "gcr.io" -repository = "asci-toolchain/toolchain-configs-e2e-test/rbe-ubuntu16-04" -digest = "sha256:612d545c006f0dcaecee82ec18045f183a35a9192c260d866bef91b75af541f5" -configs_version = "8.0.0" diff --git a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/BUILD b/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/BUILD deleted file mode 100755 index e541bd584..000000000 --- a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/BUILD +++ /dev/null @@ -1,121 +0,0 @@ -# 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. - -# This becomes the BUILD file for @local_config_cc// under non-FreeBSD unixes. - -package(default_visibility = ["//visibility:public"]) - -load(":cc_toolchain_config.bzl", "cc_toolchain_config") - -licenses(["notice"]) # Apache 2.0 - -cc_library( - name = "malloc", -) - -filegroup( - name = "empty", - srcs = [], -) - -filegroup( - name = "cc_wrapper", - srcs = ["cc_wrapper.sh"], -) - -filegroup( - name = "compiler_deps", - srcs = glob(["extra_tools/**"]) + [":empty"], -) - -# This is the entry point for --crosstool_top. Toolchains are found -# by lopping off the name of --crosstool_top and searching for -# the "${CPU}" entry in the toolchains attribute. -cc_toolchain_suite( - name = "toolchain", - toolchains = { - "k8|compiler": ":cc-compiler-k8", - "k8": ":cc-compiler-k8", - "armeabi-v7a|compiler": ":cc-compiler-armeabi-v7a", - "armeabi-v7a": ":cc-compiler-armeabi-v7a", - }, -) - -cc_toolchain( - name = "cc-compiler-k8", - all_files = ":compiler_deps", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":compiler_deps", - dwp_files = ":empty", - linker_files = ":compiler_deps", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":local", - toolchain_identifier = "local", -) - -cc_toolchain_config( - name = "local", - compiler = "compiler", - cpu = "k8", -) - -toolchain( - name = "cc-toolchain-k8", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - toolchain = ":cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -# Android tooling requires a default toolchain for the armeabi-v7a cpu. -cc_toolchain( - name = "cc-compiler-armeabi-v7a", - all_files = ":empty", - ar_files = ":empty", - as_files = ":empty", - compiler_files = ":empty", - dwp_files = ":empty", - linker_files = ":empty", - objcopy_files = ":empty", - strip_files = ":empty", - supports_param_files = 1, - toolchain_config = ":stub_armeabi-v7a", - toolchain_identifier = "stub_armeabi-v7a", -) - -cc_toolchain_config( - name = "stub_armeabi-v7a", - compiler = "compiler", - cpu = "armeabi-v7a", -) - -toolchain( - name = "cc-toolchain-armeabi-v7a", - exec_compatible_with = [ - # TODO(katre): add autodiscovered constraints for host CPU and OS. - ], - target_compatible_with = [ - "@bazel_tools//platforms:arm", - "@bazel_tools//platforms:android", - ], - toolchain = ":cc-compiler-armabi-v7a", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) diff --git a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/cc_toolchain_config.bzl b/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/cc_toolchain_config.bzl deleted file mode 100755 index 31bd07ee1..000000000 --- a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/cc_toolchain_config.bzl +++ /dev/null @@ -1,1733 +0,0 @@ -# Copyright 2019 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. - -"""A Starlark cc_toolchain configuration rule""" - -load( - "@bazel_tools//tools/cpp:cc_toolchain_config_lib.bzl", - "action_config", - "artifact_name_pattern", - "env_entry", - "env_set", - "feature", - "feature_set", - "flag_group", - "flag_set", - "tool", - "tool_path", - "variable_with_value", - "with_feature_set", -) -load("@bazel_tools//tools/build_defs/cc:action_names.bzl", "ACTION_NAMES") - -all_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, - ACTION_NAMES.lto_backend, -] - -all_cpp_compile_actions = [ - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.clif_match, -] - -preprocessor_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.clif_match, -] - -codegen_compile_actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, -] - -all_link_actions = [ - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, -] - -def _windows_msvc_impl(ctx): - toolchain_identifier = "msvc_x64" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "msvcrt" - compiler = "msvc-cl" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - cpp_link_nodeps_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_nodeps_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - cpp_link_static_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_static_library, - implies = [ - "nologo", - "archiver_flags", - "input_param_flags", - "linker_param_file", - "msvc_env", - ], - tools = [tool(path = "")], - ) - - assemble_action = action_config( - action_name = ACTION_NAMES.assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - preprocess_assemble_action = action_config( - action_name = ACTION_NAMES.preprocess_assemble, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "nologo", - "msvc_env", - "sysroot", - ], - tools = [tool(path = "")], - ) - - c_compile_action = action_config( - action_name = ACTION_NAMES.c_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_compile_action = action_config( - action_name = ACTION_NAMES.cpp_compile, - implies = [ - "compiler_input_flags", - "compiler_output_flags", - "default_compile_flags", - "nologo", - "msvc_env", - "parse_showincludes", - "user_compile_flags", - "sysroot", - "unfiltered_compile_flags", - ], - tools = [tool(path = "")], - ) - - cpp_link_executable_action = action_config( - action_name = ACTION_NAMES.cpp_link_executable, - implies = [ - "nologo", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - ], - tools = [tool(path = "")], - ) - - cpp_link_dynamic_library_action = action_config( - action_name = ACTION_NAMES.cpp_link_dynamic_library, - implies = [ - "nologo", - "shared_flag", - "linkstamps", - "output_execpath_flags", - "input_param_flags", - "user_link_flags", - "default_link_flags", - "linker_subsystem_flag", - "linker_param_file", - "msvc_env", - "no_stripping", - "has_configured_linker_path", - "def_file", - ], - tools = [tool(path = "")], - ) - - action_configs = [ - assemble_action, - preprocess_assemble_action, - c_compile_action, - cpp_compile_action, - cpp_link_executable_action, - cpp_link_dynamic_library_action, - cpp_link_nodeps_dynamic_library_action, - cpp_link_static_library_action, - ] - - msvc_link_env_feature = feature( - name = "msvc_link_env", - env_sets = [ - env_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - env_entries = [env_entry(key = "LIB", value = "")], - ), - ], - ) - - shared_flag_feature = feature( - name = "shared_flag", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [flag_group(flags = ["/DLL"])], - ), - ], - ) - - determinism_feature = feature( - name = "determinism", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "/wd4117", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ], - ), - ], - ), - ], - ) - - sysroot_feature = feature( - name = "sysroot", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - iterate_over = "sysroot", - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{unfiltered_compile_flags}"], - iterate_over = "unfiltered_compile_flags", - expand_if_available = "unfiltered_compile_flags", - ), - ], - ), - ], - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - input_param_flags_feature = feature( - name = "input_param_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["/IMPLIB:%{interface_library_output_path}"], - expand_if_available = "interface_library_output_path", - ), - ], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{libopts}"], - iterate_over = "libopts", - expand_if_available = "libopts", - ), - ], - ), - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link", - flag_groups = [ - flag_group( - iterate_over = "libraries_to_link.object_files", - flag_groups = [flag_group(flags = ["%{libraries_to_link.object_files}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file_group", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "object_file", - ), - ), - flag_group( - flag_groups = [flag_group(flags = ["%{libraries_to_link.name}"])], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "interface_library", - ), - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["%{libraries_to_link.name}"], - expand_if_false = "libraries_to_link.is_whole_archive", - ), - flag_group( - flags = ["/WHOLEARCHIVE:%{libraries_to_link.name}"], - expand_if_true = "libraries_to_link.is_whole_archive", - ), - ], - expand_if_equal = variable_with_value( - name = "libraries_to_link.type", - value = "static_library", - ), - ), - ], - expand_if_available = "libraries_to_link", - ), - ], - ), - ], - ) - - fastbuild_feature = feature( - name = "fastbuild", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - archiver_flags_feature = feature( - name = "archiver_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/MACHINE:X64"])], - ), - ], - ) - - static_link_msvcrt_feature = feature(name = "static_link_msvcrt") - - dynamic_link_msvcrt_debug_feature = feature( - name = "dynamic_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MDd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - dbg_feature = feature( - name = "dbg", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Od", "/Z7"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["", "/INCREMENTAL:NO"], - ), - ], - ), - ], - implies = ["generate_pdb_file"], - ) - - opt_feature = feature( - name = "opt", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/O2"])], - ), - ], - implies = ["frame_pointer"], - ) - - supports_interface_shared_libraries_feature = feature( - name = "supports_interface_shared_libraries", - enabled = True, - ) - - user_link_flags_feature = feature( - name = "user_link_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{user_link_flags}"], - iterate_over = "user_link_flags", - expand_if_available = "user_link_flags", - ), - ], - ), - ], - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = [ - "/DCOMPILER_MSVC", - "/DNOMINMAX", - "/D_WIN32_WINNT=0x0601", - "/D_CRT_SECURE_NO_DEPRECATE", - "/D_CRT_SECURE_NO_WARNINGS", - "/bigobj", - "/Zm500", - "/EHsc", - "/wd4351", - "/wd4291", - "/wd4250", - "/wd4996", - ], - ), - ], - ), - ], - ) - - msvc_compile_env_feature = feature( - name = "msvc_compile_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ], - env_entries = [env_entry(key = "INCLUDE", value = "")], - ), - ], - ) - - preprocessor_defines_feature = feature( - name = "preprocessor_defines", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/D%{preprocessor_defines}"], - iterate_over = "preprocessor_defines", - ), - ], - ), - ], - ) - - generate_pdb_file_feature = feature( - name = "generate_pdb_file", - requires = [ - feature_set(features = ["dbg"]), - feature_set(features = ["fastbuild"]), - ], - ) - - output_execpath_flags_feature = feature( - name = "output_execpath_flags", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/OUT:%{output_execpath}"], - expand_if_available = "output_execpath", - ), - ], - ), - ], - ) - - dynamic_link_msvcrt_no_debug_feature = feature( - name = "dynamic_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MD"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:msvcrt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - disable_assertions_feature = feature( - name = "disable_assertions", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/DNDEBUG"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - has_configured_linker_path_feature = feature(name = "has_configured_linker_path") - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - no_stripping_feature = feature(name = "no_stripping") - - linker_param_file_feature = feature( - name = "linker_param_file", - flag_sets = [ - flag_set( - actions = all_link_actions + - [ACTION_NAMES.cpp_link_static_library], - flag_groups = [ - flag_group( - flags = ["@%{linker_param_file}"], - expand_if_available = "linker_param_file", - ), - ], - ), - ], - ) - - ignore_noisy_warnings_feature = feature( - name = "ignore_noisy_warnings", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.cpp_link_static_library], - flag_groups = [flag_group(flags = ["/ignore:4221"])], - ), - ], - ) - - no_legacy_features_feature = feature(name = "no_legacy_features") - - parse_showincludes_feature = feature( - name = "parse_showincludes", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_header_parsing, - ], - flag_groups = [flag_group(flags = ["/showIncludes"])], - ), - ], - ) - - static_link_msvcrt_no_debug_feature = feature( - name = "static_link_msvcrt_no_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MT"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmt.lib"])], - ), - ], - requires = [ - feature_set(features = ["fastbuild"]), - feature_set(features = ["opt"]), - ], - ) - - treat_warnings_as_errors_feature = feature( - name = "treat_warnings_as_errors", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/WX"])], - ), - ], - ) - - windows_export_all_symbols_feature = feature(name = "windows_export_all_symbols") - - no_windows_export_all_symbols_feature = feature(name = "no_windows_export_all_symbols") - - include_paths_feature = feature( - name = "include_paths", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group( - flags = ["/I%{quote_include_paths}"], - iterate_over = "quote_include_paths", - ), - flag_group( - flags = ["/I%{include_paths}"], - iterate_over = "include_paths", - ), - flag_group( - flags = ["/I%{system_include_paths}"], - iterate_over = "system_include_paths", - ), - ], - ), - ], - ) - - linkstamps_feature = feature( - name = "linkstamps", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["%{linkstamp_paths}"], - iterate_over = "linkstamp_paths", - expand_if_available = "linkstamp_paths", - ), - ], - ), - ], - ) - - targets_windows_feature = feature( - name = "targets_windows", - enabled = True, - implies = ["copy_dynamic_libraries_to_binary"], - ) - - linker_subsystem_flag_feature = feature( - name = "linker_subsystem_flag", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/SUBSYSTEM:CONSOLE"])], - ), - ], - ) - - static_link_msvcrt_debug_feature = feature( - name = "static_link_msvcrt_debug", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/MTd"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/DEFAULTLIB:libcmtd.lib"])], - ), - ], - requires = [feature_set(features = ["dbg"])], - ) - - frame_pointer_feature = feature( - name = "frame_pointer", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Oy-"])], - ), - ], - ) - - compiler_output_flags_feature = feature( - name = "compiler_output_flags", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.assemble], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}", "/Zi"], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - ], - expand_if_not_available = "output_preprocess_file", - ), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fo%{output_file}"], - expand_if_not_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - expand_if_not_available = "output_assembly_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/Fa%{output_file}"], - expand_if_available = "output_assembly_file", - ), - ], - expand_if_available = "output_file", - ), - flag_group( - flag_groups = [ - flag_group( - flags = ["/P", "/Fi%{output_file}"], - expand_if_available = "output_preprocess_file", - ), - ], - expand_if_available = "output_file", - ), - ], - ), - ], - ) - - nologo_feature = feature( - name = "nologo", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - flag_groups = [flag_group(flags = ["/nologo"])], - ), - ], - ) - - smaller_binary_feature = feature( - name = "smaller_binary", - enabled = True, - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [flag_group(flags = ["/Gy", "/Gw"])], - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = all_link_actions, - flag_groups = [flag_group(flags = ["/OPT:ICF", "/OPT:REF"])], - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - compiler_input_flags_feature = feature( - name = "compiler_input_flags", - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ], - flag_groups = [ - flag_group( - flags = ["/c", "%{source_file}"], - expand_if_available = "source_file", - ), - ], - ), - ], - ) - - def_file_feature = feature( - name = "def_file", - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = [ - flag_group( - flags = ["/DEF:%{def_file_path}", "/ignore:4070"], - expand_if_available = "def_file_path", - ), - ], - ), - ], - ) - - msvc_env_feature = feature( - name = "msvc_env", - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = ""), - env_entry(key = "TMP", value = ""), - env_entry(key = "TEMP", value = ""), - ], - ), - ], - implies = ["msvc_compile_env", "msvc_link_env"], - ) - - features = [ - no_legacy_features_feature, - nologo_feature, - has_configured_linker_path_feature, - no_stripping_feature, - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - default_compile_flags_feature, - msvc_env_feature, - msvc_compile_env_feature, - msvc_link_env_feature, - include_paths_feature, - preprocessor_defines_feature, - parse_showincludes_feature, - generate_pdb_file_feature, - shared_flag_feature, - linkstamps_feature, - output_execpath_flags_feature, - archiver_flags_feature, - input_param_flags_feature, - linker_subsystem_flag_feature, - user_link_flags_feature, - default_link_flags_feature, - linker_param_file_feature, - static_link_msvcrt_feature, - static_link_msvcrt_no_debug_feature, - dynamic_link_msvcrt_no_debug_feature, - static_link_msvcrt_debug_feature, - dynamic_link_msvcrt_debug_feature, - dbg_feature, - fastbuild_feature, - opt_feature, - frame_pointer_feature, - disable_assertions_feature, - determinism_feature, - treat_warnings_as_errors_feature, - smaller_binary_feature, - ignore_noisy_warnings_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - compiler_output_flags_feature, - compiler_input_flags_feature, - def_file_feature, - windows_export_all_symbols_feature, - no_windows_export_all_symbols_feature, - supports_dynamic_linker_feature, - supports_interface_shared_libraries_feature, - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "object_file", - prefix = "", - extension = ".obj", - ), - artifact_name_pattern( - category_name = "static_library", - prefix = "", - extension = ".lib", - ), - artifact_name_pattern( - category_name = "alwayslink_static_library", - prefix = "", - extension = ".lo.lib", - ), - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - artifact_name_pattern( - category_name = "dynamic_library", - prefix = "", - extension = ".dll", - ), - artifact_name_pattern( - category_name = "interface_library", - prefix = "", - extension = ".if.lib", - ), - ] - - make_variables = [] - - tool_paths = [ - 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", - ), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = None, - ) - -def _windows_msys_mingw_impl(ctx): - toolchain_identifier = "msys_x64_mingw" - host_system_name = "local" - target_system_name = "local" - target_cpu = "x64_windows" - target_libc = "mingw" - compiler = "mingw-gcc" - abi_version = "local" - abi_libc_version = "local" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - msys_mingw_flags = [ - ] - msys_mingw_link_flags = [ - ] - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = msys_mingw_flags)] if msys_mingw_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = msys_mingw_link_flags)] if msys_mingw_link_flags else []), - ), - ], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - default_compile_flags_feature, - default_link_flags_feature, - supports_dynamic_linker_feature, - ] - - cxx_builtin_include_directories = [ - ] - - artifact_name_patterns = [ - artifact_name_pattern( - category_name = "executable", - prefix = "", - extension = ".exe", - ), - ] - - make_variables = [] - tool_paths = [ - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _armeabi_impl(ctx): - toolchain_identifier = "stub_armeabi-v7a" - host_system_name = "armeabi-v7a" - target_system_name = "armeabi-v7a" - target_cpu = "armeabi-v7a" - target_libc = "armeabi-v7a" - compiler = "compiler" - abi_version = "armeabi-v7a" - abi_libc_version = "armeabi-v7a" - cc_target_os = None - builtin_sysroot = None - action_configs = [] - - supports_pic_feature = feature(name = "supports_pic", enabled = True) - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - features = [supports_dynamic_linker_feature, supports_pic_feature] - - cxx_builtin_include_directories = [] - artifact_name_patterns = [] - make_variables = [] - - tool_paths = [ - 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"), - ] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = toolchain_identifier, - host_system_name = host_system_name, - target_system_name = target_system_name, - target_cpu = target_cpu, - target_libc = target_libc, - compiler = compiler, - abi_version = abi_version, - abi_libc_version = abi_libc_version, - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = builtin_sysroot, - cc_target_os = cc_target_os, - ) - -def _impl(ctx): - if ctx.attr.cpu == "armeabi-v7a": - return _armeabi_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "msvc-cl": - return _windows_msvc_impl(ctx) - elif ctx.attr.cpu == "x64_windows" and ctx.attr.compiler == "mingw-gcc": - return _windows_msys_mingw_impl(ctx) - - tool_paths = [ - tool_path(name = "ar", path = "/usr/bin/ar"), - tool_path(name = "ld", path = "/usr/bin/ld"), - tool_path(name = "cpp", path = "/usr/bin/cpp"), - tool_path(name = "gcc", path = "/usr/local/bin/clang"), - tool_path(name = "dwp", path = "/usr/bin/dwp"), - tool_path(name = "gcov", path = "/dev/null"), - 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"), - ] - - cxx_builtin_include_directories = [ - "/usr/local/include", - "/usr/local/lib/clang/9.0.0/include", - "/usr/include/x86_64-linux-gnu", - "/usr/include", - "/usr/include/c++/4.9", - "/usr/include/x86_64-linux-gnu/c++/4.9", - "/usr/include/c++/4.9/backward", - ] - - action_configs = [] - - compile_flags = [ - "-U_FORTIFY_SOURCE", - "-fstack-protector", - "-Wall", - "-Wthread-safety", - "-Wself-assign", - "-fcolor-diagnostics", - "-fno-omit-frame-pointer", - ] - - dbg_compile_flags = [ - "-g", - ] - - opt_compile_flags = [ - "-g0", - "-O2", - "-D_FORTIFY_SOURCE=1", - "-DNDEBUG", - "-ffunction-sections", - "-fdata-sections", - ] - - cxx_flags = [ - "-std=c++0x", - ] - - link_flags = [ - "-fuse-ld=gold", - "-Wl,-no-as-needed", - "-Wl,-z,relro,-z,now", - "-B/usr/local/bin", - "-lstdc++", - "-lm", - ] - - opt_link_flags = [ - "-Wl,--gc-sections", - ] - - unfiltered_compile_flags = [ - "-no-canonical-prefixes", - "-Wno-builtin-macro-redefined", - "-D__DATE__=\"redacted\"", - "-D__TIMESTAMP__=\"redacted\"", - "-D__TIME__=\"redacted\"", - ] - - targets_windows_feature = feature( - name = "targets_windows", - implies = ["copy_dynamic_libraries_to_binary"], - enabled = True, - ) - - copy_dynamic_libraries_to_binary_feature = feature(name = "copy_dynamic_libraries_to_binary") - - gcc_env_feature = feature( - name = "gcc_env", - enabled = True, - env_sets = [ - env_set( - actions = [ - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_static_library, - ], - env_entries = [ - env_entry(key = "PATH", value = "NOT_USED"), - ], - ), - ], - ) - - windows_features = [ - targets_windows_feature, - copy_dynamic_libraries_to_binary_feature, - gcc_env_feature, - ] - - coverage_feature = feature( - name = "coverage", - provides = ["profile"], - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - flag_set( - actions = [ - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ACTION_NAMES.cpp_link_executable, - ], - flag_groups = [ - flag_group(flags = ["--coverage"]), - ], - ), - ], - ) - - supports_pic_feature = feature( - name = "supports_pic", - enabled = True, - ) - supports_start_end_lib_feature = feature( - name = "supports_start_end_lib", - enabled = True, - ) - - default_compile_flags_feature = feature( - name = "default_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = compile_flags)] if compile_flags else []), - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = dbg_compile_flags)] if dbg_compile_flags else []), - with_features = [with_feature_set(features = ["dbg"])], - ), - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = opt_compile_flags)] if opt_compile_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - flag_set( - actions = [ - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = cxx_flags)] if cxx_flags else []), - ), - ], - ) - - default_link_flags_feature = feature( - name = "default_link_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = link_flags)] if link_flags else []), - ), - flag_set( - actions = all_link_actions, - flag_groups = ([flag_group(flags = opt_link_flags)] if opt_link_flags else []), - with_features = [with_feature_set(features = ["opt"])], - ), - ], - ) - - dbg_feature = feature(name = "dbg") - - opt_feature = feature(name = "opt") - - sysroot_feature = feature( - name = "sysroot", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ACTION_NAMES.cpp_link_executable, - ACTION_NAMES.cpp_link_dynamic_library, - ACTION_NAMES.cpp_link_nodeps_dynamic_library, - ], - flag_groups = [ - flag_group( - flags = ["--sysroot=%{sysroot}"], - expand_if_available = "sysroot", - ), - ], - ), - ], - ) - - fdo_optimize_feature = feature( - name = "fdo_optimize", - flag_sets = [ - flag_set( - actions = [ACTION_NAMES.c_compile, ACTION_NAMES.cpp_compile], - flag_groups = [ - flag_group( - flags = [ - "-fprofile-use=%{fdo_profile_path}", - "-fprofile-correction", - ], - expand_if_available = "fdo_profile_path", - ), - ], - ), - ], - provides = ["profile"], - ) - - supports_dynamic_linker_feature = feature(name = "supports_dynamic_linker", enabled = True) - - user_compile_flags_feature = feature( - name = "user_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = [ - flag_group( - flags = ["%{user_compile_flags}"], - iterate_over = "user_compile_flags", - expand_if_available = "user_compile_flags", - ), - ], - ), - ], - ) - - unfiltered_compile_flags_feature = feature( - name = "unfiltered_compile_flags", - enabled = True, - flag_sets = [ - flag_set( - actions = [ - ACTION_NAMES.assemble, - ACTION_NAMES.preprocess_assemble, - ACTION_NAMES.linkstamp_compile, - ACTION_NAMES.c_compile, - ACTION_NAMES.cpp_compile, - ACTION_NAMES.cpp_header_parsing, - ACTION_NAMES.cpp_module_compile, - ACTION_NAMES.cpp_module_codegen, - ACTION_NAMES.lto_backend, - ACTION_NAMES.clif_match, - ], - flag_groups = ([flag_group(flags = unfiltered_compile_flags)] if unfiltered_compile_flags else []), - ), - ], - ) - - features = [ - supports_pic_feature, - supports_start_end_lib_feature, - coverage_feature, - default_compile_flags_feature, - default_link_flags_feature, - fdo_optimize_feature, - supports_dynamic_linker_feature, - dbg_feature, - opt_feature, - user_compile_flags_feature, - sysroot_feature, - unfiltered_compile_flags_feature, - ] - - artifact_name_patterns = [ - ] - - make_variables = [] - - return cc_common.create_cc_toolchain_config_info( - ctx = ctx, - features = features, - action_configs = action_configs, - artifact_name_patterns = artifact_name_patterns, - cxx_builtin_include_directories = cxx_builtin_include_directories, - toolchain_identifier = "local", - host_system_name = "local", - target_system_name = "local", - target_cpu = "k8", - target_libc = "local", - compiler = "compiler", - abi_version = "local", - abi_libc_version = "local", - tool_paths = tool_paths, - make_variables = make_variables, - builtin_sysroot = "", - cc_target_os = None, - ) - -cc_toolchain_config = rule( - implementation = _impl, - attrs = { - "cpu": attr.string(mandatory = True), - "compiler": attr.string(), - }, - provides = [CcToolchainConfigInfo], -) diff --git a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/cc_wrapper.sh b/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/cc_wrapper.sh deleted file mode 100755 index 42a751dcc..000000000 --- a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/cc_wrapper.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/bin/bash -# -# Copyright 2015 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. -# -# Ship the environment to the C++ action -# -set -eu - -# Set-up the environment - - -# Call the C++ compiler -/usr/local/bin/clang "$@" diff --git a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/dummy_toolchain.bzl b/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/dummy_toolchain.bzl deleted file mode 100755 index 45c0285d2..000000000 --- a/tests/config/no_updates/9.0.0/bazel_0.24.1/cc/dummy_toolchain.bzl +++ /dev/null @@ -1,23 +0,0 @@ -# pylint: disable=g-bad-file-header -# Copyright 2017 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. - -"""Skylark rule that stubs a toolchain.""" - -def _dummy_toolchain_impl(ctx): - ctx = ctx # unused argument - toolchain = platform_common.ToolchainInfo() - return [toolchain] - -dummy_toolchain = rule(_dummy_toolchain_impl, attrs = {}) diff --git a/tests/config/no_updates/9.0.0/bazel_0.24.1/config/BUILD b/tests/config/no_updates/9.0.0/bazel_0.24.1/config/BUILD deleted file mode 100644 index fbab53b13..000000000 --- a/tests/config/no_updates/9.0.0/bazel_0.24.1/config/BUILD +++ /dev/null @@ -1,49 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -toolchain( - name = "cc-toolchain", - exec_compatible_with = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - target_compatible_with = [ - "@bazel_tools//platforms:linux", - "@bazel_tools//platforms:x86_64", - ], - toolchain = "//tests/config/no_updates/9.0.0/bazel_0.24.1:cc-compiler-k8", - toolchain_type = "@bazel_tools//tools/cpp:toolchain_type", -) - -platform( - name = "platform", - constraint_values = [ - "@bazel_tools//platforms:x86_64", - "@bazel_tools//platforms:linux", - "@bazel_tools//tools/cpp:clang", - ], - remote_execution_properties = """ - properties: { - name: "container-image" - value:"docker://gcr.io/asci-toolchain/toolchain-configs-e2e-test/rbe-ubuntu16-04@sha256:671d8b28e99c8a0a7aa2aaae072bf8e92c19def082b218ae46e209274cdd476e" - } - """, -) diff --git a/tests/config/no_updates/9.0.0/bazel_0.24.1/java/BUILD b/tests/config/no_updates/9.0.0/bazel_0.24.1/java/BUILD deleted file mode 100644 index 7c273a5b0..000000000 --- a/tests/config/no_updates/9.0.0/bazel_0.24.1/java/BUILD +++ /dev/null @@ -1,25 +0,0 @@ -# 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. - -# This file is auto-generated by an rbe_autoconfig repository rule -# and should not be modified directly. -# See @bazel_toolchains//rules:rbe_repo.bzl - -package(default_visibility = ["//visibility:public"]) - -java_runtime( - name = "jdk", - srcs = [], - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", -) diff --git a/tests/config/no_updates/versions.bzl b/tests/config/no_updates/versions.bzl deleted file mode 100644 index 0de436bfc..000000000 --- a/tests/config/no_updates/versions.bzl +++ /dev/null @@ -1,87 +0,0 @@ -# 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 -"""Provides functionality to determine hosted configs based on Bazel version and -the container digest. - -WARNING: Autogenerated file. Do not edit manually as changes may be overridden. -Contact repository owners if you wish to edit this file for instructions. -""" - -_ENV1 = { - "ABI_LIBC_VERSION": "glibc_2.19", - "ABI_VERSION": "clang", - "BAZEL_COMPILER": "clang", - "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", - "BAZEL_TARGET_CPU": "k8", - "BAZEL_TARGET_LIBC": "glibc_2.19", - "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", - "CC": "clang", - "CC_TOOLCHAIN_NAME": "linux_gnu_x86", -} - -_TOOLCHAIN_CONFIG_SPEC1 = struct( - name = "9.0.0", - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", - java_version = "8", - create_java_configs = True, - create_cc_configs = True, - config_repos = [], - env = _ENV1, -) - -_ENV2 = { - "ABI_LIBC_VERSION": "glibc_2.19", - "ABI_VERSION": "clang", - "BAZEL_COMPILER": "clang", - "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", - "BAZEL_TARGET_CPU": "k8", - "BAZEL_TARGET_LIBC": "glibc_2.19", - "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", - "CC": "clang", - "CC_TOOLCHAIN_NAME": "linux_gnu_x86", -} - -_TOOLCHAIN_CONFIG_SPEC2 = struct( - name = "8.0.0", - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", - java_version = "8", - create_java_configs = True, - create_cc_configs = True, - config_repos = [], - env = _ENV2, -) - -_TOOLCHAIN_CONFIG_SPECS = [_TOOLCHAIN_CONFIG_SPEC1, _TOOLCHAIN_CONFIG_SPEC2] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = _TOOLCHAIN_CONFIG_SPEC1 - -# Returns a dict with suppported Bazel versions mapped to the config version to use. -_BAZEL_TO_CONFIG_SPEC_NAMES = { - "0.24.1": ["9.0.0"], -} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "sha256:671d8b28e99c8a0a7aa2aaae072bf8e92c19def082b218ae46e209274cdd476e" - -CONTAINER_TO_CONFIG_SPEC_NAMES = { - "sha256:671d8b28e99c8a0a7aa2aaae072bf8e92c19def082b218ae46e209274cdd476e": ["9.0.0"], -} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/config/trigger_config_gen/versions.bzl b/tests/config/trigger_config_gen/versions.bzl deleted file mode 100644 index 6b0e5015f..000000000 --- a/tests/config/trigger_config_gen/versions.bzl +++ /dev/null @@ -1,39 +0,0 @@ -# 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 -"""Provides functionality to determine hosted configs based on Bazel version and -the container digest. - -WARNING: Autogenerated file. Do not edit manually as changes may be overridden. -Contact repository owners if you wish to edit this file for instructions. -""" - -# Returns a dict with suppported Bazel versions mapped to the config version to use. -_BAZEL_TO_CONFIG_SPEC_NAMES = {} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "" - -CONTAINER_TO_CONFIG_SPEC_NAMES = {} - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = "" - -_TOOLCHAIN_CONFIG_SPECS = [] - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/config/ubuntu16_04_clang_autoconfig_test.sh b/tests/config/ubuntu16_04_clang_autoconfig_test.sh deleted file mode 100755 index 1a471f6ca..000000000 --- a/tests/config/ubuntu16_04_clang_autoconfig_test.sh +++ /dev/null @@ -1,60 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -# Integration test to validate the docker_toolchain_autoconfig rule. -# -# This test validates the docker_toolchain_autoconfig rule. It generates -# toolchain configs for Bazel 0.10.0 release, and compares newly generated -# configs with published ones. - -set -ex - -# Define constants. -WORKSPACE_ROOT=$(pwd) -COMMIT=cddc376d428ada2927ad359211c3e356bd9c9fbb -BAZEL_VERSION=0.24.0 -CONFIG_VERSION=1.2 -TEST_CONFIGS_DIR=${TEST_TMPDIR}/bazel-toolchains-${COMMIT}/configs/ubuntu16_04_clang/${CONFIG_VERSION}/bazel_${BAZEL_VERSION}/default/ -AUTOCONFIG_SCRIPT=${WORKSPACE_ROOT}/tests/config/ubuntu16_04-clang-${CONFIG_VERSION}-bazel_${BAZEL_VERSION}-autoconfig - -# Execute the autoconfig script and unpack toolchain config tarball. -tar -xf ${AUTOCONFIG_SCRIPT}_outputs.tar -C ${TEST_TMPDIR} - -# Remove generated files that are not part of toolchain configs -rm -rf ${TEST_TMPDIR}/local_config_cc/tools ${TEST_TMPDIR}/local_config_cc/WORKSPACE -BUILDIFIER_VERSION=0.22.0 -wget -q https://github.com/bazelbuild/buildtools/releases/download/${BUILDIFIER_VERSION}/buildifier -chmod +x ./buildifier -./buildifier --lint=fix ${TEST_TMPDIR}/local_config_cc/BUILD -./buildifier --lint=fix ${TEST_TMPDIR}/local_config_cc/cc_toolchain_config.bzl - -# Unpack the tarball containing published toolchain configs for Bazel 0.10.0 from GitHub. -tar -xf ${TEST_SRCDIR}/bazel_toolchains_test/file/${COMMIT}.tar.gz -C ${TEST_TMPDIR} - -# Remove METADATA file. -rm ${TEST_CONFIGS_DIR}/METADATA - -# Do not exit immediately if diff result is not empty. -set +e - -# Compare the two directories. -diff_result=$(diff -ry --suppress-common-lines ${TEST_TMPDIR}/local_config_cc ${TEST_CONFIGS_DIR}) -if [[ -n ${diff_result} ]]; then - echo -e "Toolchain configs are changed.\n${diff_result}\n" - exit -1 -fi - -echo "PASS" diff --git a/tests/rbe_external_project/BUILD.ptrace_platform b/tests/rbe_external_project/BUILD.ptrace_platform deleted file mode 100644 index 969a615f4..000000000 --- a/tests/rbe_external_project/BUILD.ptrace_platform +++ /dev/null @@ -1,29 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) - -platform( - name = "platform", - parents = ["@rbe_default//config:platform"], - remote_execution_properties = """ - {PARENT_REMOTE_EXECUTION_PROPERTIES} - properties: { - name: "dockerAddCapabilities" - value: "SYS_PTRACE" - } - """, -) diff --git a/tests/rbe_external_project/abseil.yaml b/tests/rbe_external_project/abseil.yaml deleted file mode 100644 index 0331be719..000000000 --- a/tests/rbe_external_project/abseil.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Basic test that builds Bazel on RBE using the latest Bazel version -steps: -# pull the abseil-cpp project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/abseil/abseil-cpp.git - - external-src - -# modify the WORKSPACE file -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_default toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../bazelrc/latest.bazelrc - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //absl/... - - -//absl/time/internal/cctz:time_zone_format_test - - -//absl/time/internal/cctz:time_zone_lookup_test - - -//absl/container:btree_test - - -//absl/container:inlined_vector_benchmark - - -//absl/random:benchmarks - - -//absl/random:gaussian_distribution_test - dir: 'external-src' diff --git a/tests/rbe_external_project/abseil_asan.yaml b/tests/rbe_external_project/abseil_asan.yaml deleted file mode 100644 index 9445cbeb6..000000000 --- a/tests/rbe_external_project/abseil_asan.yaml +++ /dev/null @@ -1,66 +0,0 @@ -# Basic test that builds Abseil with ASAN on RBE using the latest Bazel version -steps: -# pull the abseil-cpp project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/abseil/abseil-cpp.git - - external-src - -# modify the WORKSPACE file -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Add the BUILD file with the asan platform that enables ptrace -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_asan_platform.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_default toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../bazelrc/.bazelrc.notoolchain - - test - # toolchain flags to use @rbe-default with asan platform - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --host_javabase=@rbe_default//java:jdk - - --javabase=@rbe_default//java:jdk - - --crosstool_top=@rbe_default//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_default//config:cc-toolchain - - --extra_execution_platforms=//rbe-asan:platform - - --host_platform=//rbe-asan:platform - - --platforms=//rbe-asan:platform - # asan specific flags - - --incompatible_enable_cc_toolchain_resolution - - --copt=-fsanitize=address - - --linkopt=-fsanitize=address - # This is needed because cc_configure does not currently add - # /usr/local/lib/clang/10.0.0/share to the builtin_include_directory_paths - - --copt=-fno-sanitize-blacklist - - --copt=-DADDRESS_SANITIZER=1 - - --copt=-gmlt - - --strip=never - - --test_output=errors - # RBE project specific flags - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //absl/... - - -//absl/numeric:int128_benchmark - - -//absl/time/internal/cctz:time_zone_format_test - - -//absl/time/internal/cctz:time_zone_lookup_test - - -//absl/debugging:demangle_test - - -//absl/debugging:leak_check_no_lsan_test - - -//absl/debugging:leak_check_test - - -//absl/debugging:symbolize_test - - -//absl/synchronization:mutex_benchmark - - -//absl/container:btree_test - - -//absl/container:inlined_vector_benchmark - - -//absl/random/... - dir: 'external-src' diff --git a/tests/rbe_external_project/abseil_msan.yaml b/tests/rbe_external_project/abseil_msan.yaml deleted file mode 100644 index 9d1c0de73..000000000 --- a/tests/rbe_external_project/abseil_msan.yaml +++ /dev/null @@ -1,70 +0,0 @@ -# Basic test that builds Abseil with MSAN on RBE using the latest Bazel version -steps: -# pull the abseil-cpp project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/abseil/abseil-cpp.git - - external-src - -# modify the WORKSPACE file -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_default toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../bazelrc/.bazelrc.notoolchain - - test - # toolchain flags to use @rbe_msan - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --host_javabase=@rbe_msan//java:jdk - - --javabase=@rbe_msan//java:jdk - - --crosstool_top=@rbe_msan//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_msan//config:cc-toolchain - - --extra_execution_platforms=@rbe_msan//config:platform - - --host_platform=@rbe_msan//config:platform - - --platforms=@rbe_msan//config:platform - # msan specific flags - - --copt=-fsanitize=memory - - --linkopt=-fsanitize=memory - # This is needed because cc_configure does not currently add - # /usr/local/lib/clang/10.0.0/share to the builtin_include_directory_paths - - --copt=-fno-sanitize-blacklist - - --copt=-DMEMORY_SANITIZER=1 - - --test_output=errors - - --cxxopt=--stdlib=libc++ - - --copt=-gmlt - - --strip=never - - --copt=-fsanitize-memory-track-origins - - --host_crosstool_top=@rbe_default//cc:toolchain - # RBE project specific flags - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //absl/... - - -//absl/time/internal/cctz:time_zone_format_test - - -//absl/time/internal/cctz:time_zone_lookup_test - - -//absl/debugging:symbolize_test - - -//absl/container:inlined_vector_benchmark - - -//absl/container:flat_hash_map_test - - -//absl/strings:numbers_test - - -//absl/strings:str_split_test - - -//absl/strings:string_view_test - - -//absl/types:variant_test - - -//absl/debugging:demangle_test - - -//absl/synchronization:lifetime_test - - -//absl/synchronization:mutex_test - - -//absl/strings:charconv_test - - -//absl/numeric:int128_benchmark - - -//absl/strings:str_format_convert_test - - -//absl/algorithm:algorithm_benchmark - - -//absl/container:btree_test - - -//absl/container:inlined_vector_benchmark - - -//absl/random/... - dir: 'external-src' diff --git a/tests/rbe_external_project/abseil_tsan.yaml b/tests/rbe_external_project/abseil_tsan.yaml deleted file mode 100644 index 3d6a15c50..000000000 --- a/tests/rbe_external_project/abseil_tsan.yaml +++ /dev/null @@ -1,65 +0,0 @@ -# Basic test that builds Absel with TSAN on RBE using the latest Bazel version -steps: -# pull the abseil-cpp project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/abseil/abseil-cpp.git - - external-src - -# modify the WORKSPACE file -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_default toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../bazelrc/.bazelrc.notoolchain - - test - # toolchain flags to use @rbe_default - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --host_javabase=@rbe_default//java:jdk - - --javabase=@rbe_default//java:jdk - - --crosstool_top=@rbe_default//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_default//config:cc-toolchain - - --extra_execution_platforms=@rbe_default//config:platform - - --host_platform=@rbe_default//config:platform - - --platforms=@rbe_default//config:platform - # tsan specific flags - - --copt=-fsanitize=thread - - --linkopt=-fsanitize=thread - - --copt=-DTHREAD_SANITIZER=1 - - --copt=-gmlt - - --strip=never - - --test_output=errors - # RBE project specific flags - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //absl/... - - -//absl/time/internal/cctz:time_zone_format_test - - -//absl/time/internal/cctz:time_zone_lookup_test - - -//absl/strings:numbers_test - - -//absl/base:low_level_alloc_test - - -//absl/strings:str_split_test - - -//absl/strings:string_view_test - - -//absl/synchronization:mutex_test - - -//absl/synchronization:mutex_benchmark - - -//absl/base:call_once_test - - -//absl/base:spinlock_test - - -//absl/base:sysinfo_test - - -//absl/synchronization:barrier_test - - -//absl/synchronization:blocking_counter_test - - -//absl/synchronization:lifetime_test - - -//absl/synchronization:notification_test - - -//absl/container:btree_test - - -//absl/container:hashtablez_sampler_test - - -//absl/container:inlined_vector_benchmark - - -//absl/random/... - - -//absl/numeric:int128_benchmark - dir: 'external-src' diff --git a/tests/rbe_external_project/abseil_ubsan.yaml b/tests/rbe_external_project/abseil_ubsan.yaml deleted file mode 100644 index 13f3c0d68..000000000 --- a/tests/rbe_external_project/abseil_ubsan.yaml +++ /dev/null @@ -1,55 +0,0 @@ -# Basic test that builds Abseil with UBSAN on RBE using the latest Bazel version -steps: -# pull the abseil-cpp project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/abseil/abseil-cpp.git - - external-src - -# modify the WORKSPACE file -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_default toolchain -# configs. -- name: 'l.gcr.io/google/bazel:1.0.0' - args: - - --bazelrc=../tests/rbe_repo/bazelrc/.bazelrc.0260.notoolchain - - test - - --verbose_failures - - --keep_going - # toolchain flags to use @rbe_default - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --host_javabase=@rbe_default//java:jdk - - --javabase=@rbe_default//java:jdk - - --crosstool_top=@bazel_toolchains//configs/experimental/ubuntu16_04_clang/1.3/bazel_1.0.0/ubsan:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_default//config:cc-toolchain - - --extra_execution_platforms=@rbe_default//config:platform - - --host_platform=@rbe_default//config:platform - - --platforms=@rbe_default//config:platform - # ubsan specific flags - - --copt=-fsanitize=undefined - - --linkopt=-fsanitize=undefined - - --copt=-gmlt - - --strip=never - - --test_output=errors - - --copt=-Wno-implicit-int-float-conversion - # RBE project specific flags - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //absl/... - - -//absl/time/internal/cctz:time_zone_format_test - - -//absl/time/internal/cctz:time_zone_lookup_test - - -//absl/time:time_test - - -//absl/container:btree_test - - -//absl/container:inlined_vector_benchmark - - -//absl/numeric:int128_test - - -//absl/random/... - - -//absl/strings:str_format_convert_test - dir: 'external-src' diff --git a/tests/rbe_external_project/add_asan_platform.sh b/tests/rbe_external_project/add_asan_platform.sh deleted file mode 100755 index 2da20ff41..000000000 --- a/tests/rbe_external_project/add_asan_platform.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/env bash -# Copyright 2017 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. - -# Simple script to use bazel-toolchains srcs in the current client -# and add the rbe_default repo to WORKSPACE if it does not exist -# This script should be executed from the root of an external project's srcs - -set -ex -mkdir rbe-asan -cp ../tests/rbe_external_project/BUILD.ptrace_platform rbe-asan/BUILD diff --git a/tests/rbe_external_project/add_rbe_default.sh b/tests/rbe_external_project/add_rbe_default.sh deleted file mode 100755 index be023a620..000000000 --- a/tests/rbe_external_project/add_rbe_default.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/usr/bin/env bash -# Copyright 2017 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. - -# Simple script to use bazel-toolchains srcs in the current client -# and add the rbe_default repo to WORKSPACE if it does not exist -# This script should be executed from the root of an external project's srcs - -set -ex -mv WORKSPACE WORKSPACE.bak - -if grep -q rbe_default "WORKSPACE.bak"; then - # Add content from the txt file right after the line that starts with - # 'workspace(name' (this will match the 'workspace(name="...")' line only). - # Content needs to be added as high up in WORKSPACE as possible so that - # it cannot be overriden by other declarations. - sed '/workspace(name/ r ../tests/rbe_external_project/rbe_autoconf_default_targets_no_rbe_default.txt' WORKSPACE.bak > WORKSPACE -else - sed '/workspace(name/ r ../tests/rbe_external_project/rbe_autoconf_default_targets.txt' WORKSPACE.bak > WORKSPACE -fi - -if [ -f ".bazelrc" ]; then - rm .bazelrc -fi - -cat WORKSPACE diff --git a/tests/rbe_external_project/bazel.yaml b/tests/rbe_external_project/bazel.yaml deleted file mode 100644 index 6b05eb7d3..000000000 --- a/tests/rbe_external_project/bazel.yaml +++ /dev/null @@ -1,37 +0,0 @@ -# Basic test that builds Bazel on RBE using the latest Bazel version -steps: -# pull the Bazel project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/bazelbuild/bazel.git - - external-src - -# modify the WORKSPACE file & delete the existing .bazelrc file -- name: 'gcr.io/gcp-runtimes/ubuntu_16_0_4' - args: - - ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_default toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../bazelrc/latest.bazelrc - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //src/test/java/... - - -//src/test/java/com/google/devtools/build/lib/... - - -//src/test/java/com/google/devtools/build/android/... - - -//src/test/java/com/google/devtools/build/lib/shell:CommandUsingLinuxSandboxTest - - -//src/test/java/com/google/devtools/build/lib/blackbox/tests:PythonBlackBoxTest - - -//src/test/java/com/google/devtools/build/lib/rules/objc:ObjcRulesTests - - -//src/test/java/com/google/devtools/build/lib:worker-tests - - -//src/test/java/com/google/devtools/build/lib/buildeventstream/transports:BuildEventTransportTest - - -//src/test/java/com/google/devtools/build/lib/blackbox/tests/workspace:BazelEmbeddedStarlarkBlackBoxTest - - -//src/test/java/com/google/devtools/build/lib/blackbox/tests/workspace:WorkspaceBlackBoxTest - - -//src/test/java/com/google/devtools/build/skydoc:SkydocTest - dir: 'external-src' -timeout: 1200s diff --git a/tests/rbe_external_project/bazel_jdk11.yaml b/tests/rbe_external_project/bazel_jdk11.yaml deleted file mode 100644 index a3a180ed8..000000000 --- a/tests/rbe_external_project/bazel_jdk11.yaml +++ /dev/null @@ -1,45 +0,0 @@ -# Basic test that builds Bazel on RBE using the latest Bazel version -steps: -# pull the Bazel project -- name: 'gcr.io/cloud-builders/git' - args: - - clone - - https://github.com/bazelbuild/bazel.git - - external-src - -# modify the WORKSPACE file & delete the existing .bazelrc file -- name: 'l.gcr.io/google/bazel' - entrypoint: ../tests/rbe_external_project/add_rbe_default.sh - dir: 'external-src' - -# Launch an RBE test command using the @rbe_jdk11 toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_jdk11 - - --host_javabase=@rbe_jdk11//java:jdk - - --javabase=@rbe_jdk11//java:jdk - - --crosstool_top=@rbe_jdk11//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_jdk11//config:cc-toolchain - - --extra_execution_platforms=@rbe_jdk11//config:platform - - --host_platform=@rbe_jdk11//config:platform - - --platforms=@rbe_jdk11//config:platform - - -- - - //src/test/java/... - - -//src/test/java/com/google/devtools/build/lib/... - - -//src/test/java/com/google/devtools/build/android/... - - -//src/test/java/com/google/devtools/build/lib/shell:CommandUsingLinuxSandboxTest - - -//src/test/java/com/google/devtools/build/lib/blackbox/tests:PythonBlackBoxTest - - -//src/test/java/com/google/devtools/build/lib/rules/objc:ObjcRulesTests - - -//src/test/java/com/google/devtools/build/lib:worker-tests - - -//src/test/java/com/google/devtools/build/lib/buildeventstream/transports:BuildEventTransportTest - - -//src/test/java/com/google/devtools/build/lib/blackbox/tests/workspace:BazelEmbeddedStarlarkBlackBoxTest - - -//src/test/java/com/google/devtools/build/lib/blackbox/tests/workspace:WorkspaceBlackBoxTest - - -//src/test/java/com/google/devtools/build/skydoc:SkydocTest - dir: 'external-src' -timeout: 1200s diff --git a/tests/rbe_external_project/rbe_autoconf_default_targets.txt b/tests/rbe_external_project/rbe_autoconf_default_targets.txt deleted file mode 100644 index 768b9357d..000000000 --- a/tests/rbe_external_project/rbe_autoconf_default_targets.txt +++ /dev/null @@ -1,35 +0,0 @@ -# Targets below will be added to the WORKSPACE file for -# all tests in this folder -local_repository( - name = "bazel_toolchains", - path = "../", -) - -load("@bazel_toolchains//rules:rbe_repo.bzl", "rbe_autoconfig") - -rbe_autoconfig( - name = "rbe_default", -) - -rbe_autoconfig( - name = "rbe_jdk11", - java_home = "/usr/lib/jvm/11.29.3-ca-jdk11.0.2/reduced", - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_msan", - env = { - "ABI_LIBC_VERSION": "glibc_2.19", - "ABI_VERSION": "clang", - "BAZEL_COMPILER": "clang", - "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - "BAZEL_TARGET_CPU": "k8", - "BAZEL_TARGET_LIBC": "glibc_2.19", - "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", - "CC": "clang", - "CC_TOOLCHAIN_NAME": "linux_gnu_x86", - }, -) - diff --git a/tests/rbe_external_project/rbe_autoconf_default_targets_no_rbe_default.txt b/tests/rbe_external_project/rbe_autoconf_default_targets_no_rbe_default.txt deleted file mode 100644 index 477a541f1..000000000 --- a/tests/rbe_external_project/rbe_autoconf_default_targets_no_rbe_default.txt +++ /dev/null @@ -1,31 +0,0 @@ -# Targets below will be added to the WORKSPACE file for -# all tests in this folder -local_repository( - name = "bazel_toolchains", - path = "../", -) - -load("@bazel_toolchains//rules:rbe_repo.bzl", "rbe_autoconfig") - -rbe_autoconfig( - name = "rbe_jdk11", - java_home = "/usr/lib/jvm/11.29.3-ca-jdk11.0.2/reduced", - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_msan", - env = { - "ABI_LIBC_VERSION": "glibc_2.19", - "ABI_VERSION": "clang", - "BAZEL_COMPILER": "clang", - "BAZEL_HOST_SYSTEM": "i686-unknown-linux-gnu", - "BAZEL_LINKOPTS": "-lc++:-lc++abi:-lm", - "BAZEL_TARGET_CPU": "k8", - "BAZEL_TARGET_LIBC": "glibc_2.19", - "BAZEL_TARGET_SYSTEM": "x86_64-unknown-linux-gnu", - "CC": "clang", - "CC_TOOLCHAIN_NAME": "linux_gnu_x86", - }, -) - diff --git a/tests/rbe_repo/BUILD b/tests/rbe_repo/BUILD deleted file mode 100644 index 71b69ae4f..000000000 --- a/tests/rbe_repo/BUILD +++ /dev/null @@ -1,902 +0,0 @@ -load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") - -# Copyright 2017 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. - -load( - "@bazel_tools//tools/build_rules:test_rules.bzl", - "file_test", -) -load( - "//configs/ubuntu16_04_clang:versions.bzl", - RBE_CONTAINERS_MAP = "CONTAINER_TO_CONFIG_SPEC_NAMES", - RBE_UBUNTU16_04_LATEST = "LATEST", -) -load( - "//configs/dependency-tracking:ubuntu1604.bzl", - _ubuntu1604_bazel = "bazel", -) -load( - "//rules/rbe_repo:toolchain_config_suite_spec.bzl", - "default_toolchain_config_suite_spec", -) -load( - "//tests/rbe_repo:versions_test.bzl", - test_toolchain_config_suite_autogen_spec = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) -load(":rbe_container_test.bzl", "rbe_container_test") - -# sh_tests below verify that the rbe_autoconfig targets have the -# right file structure in the external folder repo - -sh_test( - name = "rbe_autoconf_checked_in_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_checked_in//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_java_confs", - ], - data = [ - "@rbe_autoconf_checked_in//test:empty", - "@rbe_autoconf_checked_in//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_checked_in_no_java_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_checked_in_no_java//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_no_java_confs", - ], - data = [ - "@rbe_autoconf_checked_in_no_java//test:empty", - "@rbe_autoconf_checked_in_no_java//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_checked_in_no_cc_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_checked_in_no_cc//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_no_cc_confs", - "assert_java_confs", - ], - data = [ - "@rbe_autoconf_checked_in_no_cc//test:empty", - "@rbe_autoconf_checked_in_no_cc//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_generate_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_generate//test:empty)", - "assert_basic_cofig", - "assert_no_checked_in_confs", - "assert_cc_confs", - "assert_java_confs", - "assert_image_pulled", - "assert_configs_tar", - ], - data = [ - "@rbe_autoconf_generate//test:empty", - "@rbe_autoconf_generate//test:exported_testdata", - ], -) - -# TODO: Enable in CI -sh_test( - name = "rbe_autoconf_generate_windows_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_generate_windows//test:empty)", - "assert_basic_cofig", - "assert_no_checked_in_confs", - "assert_cc_confs_windows", - "assert_java_confs", - "assert_image_pulled", - "assert_configs_tar", - ], - data = [ - "@rbe_autoconf_generate_windows//test:empty", - "@rbe_autoconf_generate_windows//test:exported_testdata", - ], - tags = ["windows"], -) - -sh_test( - name = "rbe_autoconf_generate_no_java_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_generate_no_java//test:empty)", - "assert_basic_cofig", - "assert_no_checked_in_confs", - "assert_cc_confs", - "assert_no_java_confs", - "assert_no_java_home", - "assert_configs_tar", - ], - data = [ - "@rbe_autoconf_generate_no_java//test:empty", - "@rbe_autoconf_generate_no_java//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_generate_no_cc_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_generate_no_cc//test:empty)", - "assert_basic_cofig", - # output and run_and_extract should not be present - # as no config_repos were requested - "assert_checked_in_confs", - "assert_no_cc_confs", - "assert_java_confs", - "assert_configs_tar", - ], - data = [ - "@rbe_autoconf_generate_no_cc//test:empty", - "@rbe_autoconf_generate_no_cc//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_custom_java_home_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_custom_java_home//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_java_confs", - "assert_no_cc_confs", - "assert_no_java_home", - ], - data = [ - "@rbe_autoconf_custom_java_home//test:empty", - "@rbe_autoconf_custom_java_home//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_detect_java_home_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_detect_java_home//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_java_confs", - "assert_no_cc_confs", - "assert_java_home", - ], - data = [ - "@rbe_autoconf_detect_java_home//test:empty", - "@rbe_autoconf_detect_java_home//test:exported_testdata", - ], -) - -# file_test below check contents of produced BUILD files - -file_test( - name = "rbe_autoconf_checked_in_cc_alias_test", - file = "@rbe_autoconf_checked_in//test:cc/test.BUILD", - regexp = "alias", -) - -file_test( - name = "rbe_autoconf_checked_in_java_runtime_test", - file = "@rbe_autoconf_checked_in//test:java/test.BUILD", - regexp = "java_runtime", -) - -file_test( - name = "rbe_autoconf_checked_in_cc_alias_no_java_test", - file = "@rbe_autoconf_checked_in_no_java//test:cc/test.BUILD", - regexp = "alias", -) - -file_test( - name = "rbe_autoconf_checked_in_java_runtime_no_cc_test", - file = "@rbe_autoconf_checked_in_no_cc//test:java/test.BUILD", - regexp = "java_runtime", -) - -file_test( - name = "rbe_autoconf_generate_cc_toolchain_test", - file = "@rbe_autoconf_generate//test:cc/test.BUILD", - regexp = "cc_toolchain(", -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_generate_cc_toolchain_windows_test", - file = "@rbe_autoconf_generate_windows//test:cc/test.BUILD", - regexp = "cc_toolchain(", - tags = ["windows"], -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_generate_cc_toolchain_config_test", - file = "@rbe_autoconf_generate//test:cc/test.BUILD", - regexp = "cc_toolchain_config(", -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_generate_cc_toolchain_config_windows_test", - file = "@rbe_autoconf_generate_windows//test:cc/test.BUILD", - regexp = "cc_toolchain_config(", - tags = ["windows"], -) - -file_test( - name = "rbe_autoconf_generate_cc_compiler_test", - file = "@rbe_autoconf_generate//test:cc/test.BUILD", - regexp = "cc-compiler-k8", -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_generate_cc_compiler_windows_test", - file = "@rbe_autoconf_generate_windows//test:cc/test.BUILD", - regexp = "cc-compiler-x64_windows", - tags = ["windows"], -) - -file_test( - name = "rbe_autoconf_generate_java_runtime_test", - file = "@rbe_autoconf_generate//test:java/test.BUILD", - regexp = "java_runtime", -) - -# Tests that validate Bazel command executed in container -# includes the list of config repos -file_test( - name = "rbe_autoconf_generate_run_in_container_test", - file = "@rbe_autoconf_generate//test:container/run_in_container.sh", - regexp = "build @local_config_cc", -) - -file_test( - name = "rbe_autoconf_config_repos_run_in_container_test", - file = "@rbe_autoconf_config_repos//test:container/run_in_container.sh", - regexp = "@local_config_sh/", -) - -file_test( - name = "rbe_autoconf_config_repos_sh_toolchain_test", - file = "@rbe_autoconf_config_repos//test:local_config_sh/test.BUILD", - regexp = "sh_toolchain", -) - -file_test( - name = "rbe_autoconf_config_repos_no_cc_config_run_in_container_test", - file = "@rbe_autoconf_config_repos_no_cc_config//test:container/run_in_container.sh", - regexp = "build @local_config_sh/", -) - -file_test( - name = "rbe_autoconf_config_repos_no_cc_config_sh_toolchain_test", - file = "@rbe_autoconf_config_repos_no_cc_config//test:local_config_sh/test.BUILD", - regexp = "sh_toolchain", -) - -# Tests for platform target -file_test( - name = "rbe_autoconf_checked_in_platform_test", - file = "@rbe_autoconf_checked_in//test:config/test.BUILD", - regexp = "platform", -) - -file_test( - name = "rbe_autoconf_checked_in_platform_container_sha_test", - file = "@rbe_autoconf_checked_in//test:config/test.BUILD", - regexp = RBE_UBUNTU16_04_LATEST, -) - -file_test( - name = "rbe_autoconf_checked_in_platform_os_family_test", - file = "@rbe_autoconf_checked_in//test:config/test.BUILD", - regexp = "OSFamily", -) - -file_test( - name = "rbe_autoconf_generate_platform_test", - file = "@rbe_autoconf_generate//test:config/test.BUILD", - regexp = "platform", -) - -# TODO: make rbe_repo automatically choose the correct constraint as default on Windows, no :linux constraints -# right now this passes b/c we're setting exec_compatible_with etc. -file_test( - name = "rbe_autoconf_generate_platform_windows_test", - file = "@rbe_autoconf_generate_windows//test:config/test.BUILD", - regexp = "platforms:windows", - tags = ["windows"], -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_generate_config_toolchain_windows_test", - file = "@rbe_autoconf_generate_windows//test:config/test.BUILD", - regexp = "toolchain.*=.*\".*:cc-compiler-x64_windows\"", - tags = ["windows"], -) - -file_test( - name = "rbe_autoconf_checked_generate_container_sha_test", - file = "@rbe_autoconf_generate//test:config/test.BUILD", - regexp = RBE_UBUNTU16_04_LATEST, -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_checked_generate_container_sha_windows_test", - file = "@rbe_autoconf_generate_windows//test:config/test.BUILD", - regexp = "sha256:776f241c2693f3f2187d998dcc98d2b339dcb80c99ef59bccefad0eea6e61284", - tags = ["windows"], -) - -file_test( - name = "rbe_autoconf_checked_generate_os_family_test", - file = "@rbe_autoconf_generate//test:config/test.BUILD", - regexp = "OSFamily", -) - -# TODO: Enable in CI -file_test( - name = "rbe_autoconf_checked_generate_os_family_windows_test", - file = "@rbe_autoconf_generate_windows//test:config/test.BUILD", - regexp = "value:.*\"Windows\"", - tags = ["windows"], -) - -file_test( - name = "rbe_autoconf_old_container_platform_test", - file = "@rbe_autoconf_old_container//test:config/test.BUILD", - regexp = "platform", -) - -file_test( - name = "rbe_autoconf_old_container_container_sha_test", - file = "@rbe_autoconf_old_container//test:config/test.BUILD", - regexp = "87fe00c5c4d0e64ab3830f743e686716f49569dadb49f1b1b09966c1b36e153c", -) - -file_test( - name = "rbe_autoconf_old_container_os_family_test", - file = "@rbe_autoconf_old_container//test:config/test.BUILD", - regexp = "OSFamily", -) - -file_test( - name = "rbe_autoconf_custom_container_platform_test", - file = "@rbe_autoconf_custom_container//test:config/test.BUILD", - regexp = "platform", -) - -file_test( - name = "rbe_autoconf_custom_container_sha_test", - file = "@rbe_autoconf_custom_container//test:config/test.BUILD", - regexp = "eb9f72ddde60080912fed8a6f40c5a42c13ec6c890c0709c119213b199804456", -) - -file_test( - name = "rbe_autoconf_custom_os_family_test", - file = "@rbe_autoconf_custom_container//test:config/test.BUILD", - regexp = "OSFamily", -) - -file_test( - name = "rbe_autoconf_generate_run_and_extract_test", - file = "@rbe_autoconf_generate//test:run_and_extract.sh", - regexp = "data_volume", -) - -# Tests for use of java_home attr -file_test( - name = "rbe_autoconf_custom_java_home_java_runtime_test", - file = "@rbe_autoconf_custom_java_home//test:java/test.BUILD", - regexp = "java_runtime", -) - -file_test( - name = "rbe_autoconf_custom_java_home_java_runtime_value_test", - file = "@rbe_autoconf_custom_java_home//test:java/test.BUILD", - regexp = "test-case-java-home", -) - -# Tests that verify rbe_autoconfig with custom env variables. -# These tests verify that the env variables passed are present -# in the resulting C/C++ config. -# If any of the tests below fail after a new Bazel config is released -# (tests are pineed to the _ubuntu1604_bazel version), -# its possible that C/C++ config rules have changed and the tests -# need to be updated accordingly. -file_test( - name = "rbe_autoconf_custom_env_abi_libc_version_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "abi_libc_version = \"test_abi_libc_version_test\"", -) - -file_test( - name = "rbe_autoconf_custom_env_abi_version_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "abi_version = \"test_abi_version_test\"", -) - -file_test( - name = "rbe_autoconf_custom_env_bazel_host_system_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "host_system_name = \"test_bazel_host_system_test\"", -) - -file_test( - name = "rbe_autoconf_custom_env_bazel_target_cpu_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "cpu = \"test_bazel_target_cpu_test\"", -) - -file_test( - name = "rbe_autoconf_custom_env_bazel_target_libc_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "target_libc = \"test_bazel_target_libc_test\"", -) - -file_test( - name = "rbe_autoconf_custom_env_bazel_target_system_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "target_system_name = \"test_bazel_target_system_test\"", -) - -file_test( - name = "rbe_autoconf_custom_env_clang_toolchain_config_bzl_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "\"gcc\": \"/usr/local/bin/clang++\"", -) - -file_test( - name = "rbe_autoconf_custom_env_clang_toolchain_config_bzl_2_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "compiler = \"clang++\"", -) - -file_test( - name = "rbe_autoconf_custom_env_clang_cc_wrapper_sh_test", - file = "@rbe_autoconf_custom_env//test:cc/cc_wrapper.sh", - regexp = "/usr/local/bin/clang++", -) - -file_test( - name = "rbe_autoconf_custom_env_clang_build_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "compiler = \"clang++\"", -) - -file_test( - name = "rbe_autoconf_custom_env_clang_build_2_test", - file = "@rbe_autoconf_custom_env//test:cc/test.BUILD", - regexp = "\"k8|clang++\": \":cc-compiler-k8\"", -) - -# Tests that verify rbe_autoconfig with custom container + -# use of base_container_digest. Tests verify outputs correspond -# to a checked-in config and platform points to custom container -sh_test( - name = "rbe_autoconf_base_container_digest_file_structure_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_base_container_digest//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_java_confs", - ], - data = [ - "@rbe_autoconf_base_container_digest//test:empty", - "@rbe_autoconf_base_container_digest//test:exported_testdata", - ], -) - -file_test( - name = "rbe_autoconf_base_container_digest_container_sha_test", - file = "@rbe_autoconf_base_container_digest//test:config/test.BUILD", - regexp = "b28ddaf98c6e0bb840c5fded3c0a899a7db45bb44f69859f16c37be092bfcb4e", -) - -file_test( - name = "rbe_autoconf_base_container_digest_os_family_test", - file = "@rbe_autoconf_base_container_digest//test:config/test.BUILD", - regexp = "OSFamily", -) - -file_test( - name = "rbe_autoconf_base_container_digest_cc_alias_test", - file = "@rbe_autoconf_base_container_digest//test:cc/test.BUILD", - regexp = "alias", -) - -file_test( - name = "rbe_autoconf_base_container_digest_java_runtime_test", - file = "@rbe_autoconf_base_container_digest//test:java/test.BUILD", - regexp = "java_runtime", -) - -# Tests that verify rbe_autoconfig with custom exec_compatible_with -# and target_compatible_with attrs -file_test( - name = "rbe_autoconf_constraints_exec_compatible_with_test", - file = "@rbe_autoconf_constraints//test:config/test.BUILD", - regexp = "//constraints:support_docker", -) - -file_test( - name = "rbe_autoconf_constraints_target_compatible_with_test", - file = "@rbe_autoconf_constraints//test:config/test.BUILD", - regexp = "//constraints:xenial", -) - -# Test to verify tag is resolved to digest properly -file_test( - name = "rbe_autoconf_resovle_tag_test", - file = "@rbe_autoconf_resovle_tag//test:config/test.BUILD", - regexp = "9596a8fbd6a6a77b2fe1272b145235b43f516b4f86eb470d5ee99b738ce37994", -) - -# Tests for output_base. These require RBE_AUTOCONF_ROOT env variable to be set -sh_test( - name = "rbe_autoconf_output_base_test", - srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], - args = [ - "$(location @rbe_autoconf_output_base//test:empty)", - "rbe-test-output/config/rbe_autoconf_output_base", - "9.0.0", - _ubuntu1604_bazel, - "assert_output_base_cc_confs", - "assert_output_base_java_confs", - "assert_output_base_platform_confs", - ], - data = [ - ":rbe_autoconf_checks.sh", - "@rbe_autoconf_output_base//test:empty", - "@rbe_autoconf_output_base//test:exported_testdata", - ], -) - -# TODO: Enable in CI and remove hardcoded Bazel version -sh_test( - name = "rbe_autoconf_output_base_windows_test", - srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], - args = [ - "$(location @rbe_autoconf_output_base_windows//test:empty)", - "rbe-test-output/config/rbe_autoconf_output_base_windows", - "test_config_dir", - "3.1.0", - "assert_output_base_cc_confs_windows", - "assert_output_base_platform_confs", - ], - data = [ - ":rbe_autoconf_checks.sh", - "@rbe_autoconf_output_base_windows//test:empty", - "@rbe_autoconf_output_base_windows//test:exported_testdata", - ], - tags = ["windows"], -) - -file_test( - name = "rbe_autoconf_output_base_test_cc_alias_test", - file = "@rbe_autoconf_output_base//test:cc/test.BUILD", - regexp = "alias", -) - -file_test( - name = "rbe_autoconf_output_base_test_java_alias_test", - file = "@rbe_autoconf_output_base//test:java/test.BUILD", - regexp = "alias", -) - -sh_test( - name = "rbe_autoconf_output_base_external_repo_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_output_base//test:empty)", - "assert_basic_cofig", - "assert_no_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_java_confs", - "assert_no_configs_tar", - ], - data = [ - "@rbe_autoconf_output_base//test:empty", - "@rbe_autoconf_output_base//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_output_base_no_java_test", - srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], - args = [ - "$(location @rbe_autoconf_output_base_no_java//test:empty)", - "rbe-test-output/config/rbe_autoconf_output_base_no_java", - _ubuntu1604_bazel, - "assert_output_base_cc_confs", - "assert_output_base_no_java_confs", - "assert_output_base_platform_confs", - ], - data = [ - ":rbe_autoconf_checks.sh", - "@rbe_autoconf_output_base_no_java//test:empty", - "@rbe_autoconf_output_base_no_java//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_output_base_no_cc_test", - srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], - args = [ - "$(location @rbe_autoconf_output_base_no_cc//test:empty)", - "rbe-test-output/config/rbe_autoconf_output_base_no_cc", - "9.0.0", - _ubuntu1604_bazel, - "assert_output_base_no_cc_confs", - "assert_output_base_java_confs", - "assert_output_base_platform_confs", - ], - data = [ - ":rbe_autoconf_checks.sh", - "@rbe_autoconf_output_base_no_cc//test:empty", - "@rbe_autoconf_output_base_no_cc//test:exported_testdata", - ], -) - -sh_test( - name = "rbe_autoconf_config_repos_output_base_test", - srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], - args = [ - "$(location @rbe_autoconf_config_repos_output_base//test:empty)", - "rbe-test-output/config/rbe_autoconf_config_repos_output_base", - "9.0.0", - _ubuntu1604_bazel, - "assert_output_base_cc_confs", - "assert_output_base_java_confs", - "assert_output_base_platform_confs", - "assert_output_base_custom_confs", - ], - data = [ - ":rbe_autoconf_checks.sh", - "@rbe_autoconf_config_repos_output_base//test:empty", - "@rbe_autoconf_config_repos_output_base//test:exported_testdata", - ], -) - -file_test( - name = "rbe_autoconf_config_repos_output_base_run_in_container_test", - file = "@rbe_autoconf_config_repos_output_base//test:container/run_in_container.sh", - regexp = "build @local_config_cc//... @local_config_sh//...", -) - -# Tests for output_base + config_dir. These require RBE_AUTOCONF_ROOT env -# variable to be set -sh_test( - name = "rbe_autoconf_output_base_config_dir_test", - srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], - args = [ - "$(location @rbe_autoconf_output_base_config_dir//test:empty)", - "rbe-test-output/config/rbe_autoconf_output_base", - "test_config_dir", - _ubuntu1604_bazel, - "assert_output_base_cc_confs", - "assert_output_base_java_confs", - "assert_output_base_platform_confs", - ], - data = [ - ":rbe_autoconf_checks.sh", - "@rbe_autoconf_output_base_config_dir//test:empty", - "@rbe_autoconf_output_base_config_dir//test:exported_testdata", - ], -) - -# tests to validate docker image was / was not pulled -sh_test( - name = "rbe_autoconf_generate_no_docker_pull_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_generate_no_docker_pull//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_java_confs", - "assert_no_java_home", - "assert_image_not_pulled", - ], - data = [ - "@rbe_autoconf_generate_no_docker_pull//test:empty", - "@rbe_autoconf_generate_no_docker_pull//test:exported_testdata", - ], -) - -file_test( - name = "rbe_autoconf_generate_image_name_test", - file = "@rbe_autoconf_generate//test:image_name", - regexp = RBE_UBUNTU16_04_LATEST, -) - -# Tests for rbe_autoconfig when using a custom -# toolchain_config_suite_spec. - -# tests that use rbe_autoconf_custom_toolchain_config_suite_spec -# validate it uses checked in configs when a custom versions.bzl -# file is used. -sh_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_custom_toolchain_config_suite_spec//test:empty)", - "assert_basic_cofig", - "assert_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_java_confs", - "assert_no_java_home", - ], - data = [ - "@rbe_autoconf_custom_toolchain_config_suite_spec//test:empty", - "@rbe_autoconf_custom_toolchain_config_suite_spec//test:exported_testdata", - ], -) - -file_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_cc_alias_test", - file = "@rbe_autoconf_custom_toolchain_config_suite_spec//test:cc/test.BUILD", - regexp = "alias", -) - -file_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_java_alias_test", - file = "@rbe_autoconf_custom_toolchain_config_suite_spec//test:java/test.BUILD", - regexp = "java_runtime", -) - -file_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_platform_test", - file = "@rbe_autoconf_custom_toolchain_config_suite_spec//test:config/test.BUILD", - regexp = "platform", -) - -file_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_platform_container_sha_test", - file = "@rbe_autoconf_custom_toolchain_config_suite_spec//test:config/test.BUILD", - regexp = test_toolchain_config_suite_autogen_spec.latest_container, -) - -# tests that use rbe_autoconf_custom_toolchain_config_suite_spec_export -# validate it generates configs when a custom versions.bzl -# file is used. -# Fails whenever a new Bazel version is out but configs aren't out -# sh_test( -# name = "rbe_autoconf_custom_toolchain_config_suite_spec_export_test", -# srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], -# args = [ -# "$(location @rbe_autoconf_custom_toolchain_config_suite_spec_export//test:empty)", -# "rbe-test-output/config/rbe_autoconf_custom_toolchain_config_suite_spec_export", -# "test_config_dir", -# _ubuntu1604_bazel, -# "assert_output_base_cc_confs", -# "assert_output_base_java_confs", -# "assert_output_base_platform_confs", -# ], -# data = [ -# ":rbe_autoconf_checks.sh", -# "@rbe_autoconf_custom_toolchain_config_suite_spec_export//test:empty", -# "@rbe_autoconf_custom_toolchain_config_suite_spec_export//test:exported_testdata", -# ], -#) - -sh_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_export_external_repo_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_custom_toolchain_config_suite_spec_export//test:empty)", - "assert_basic_cofig", - "assert_no_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_java_confs", - "assert_no_configs_tar", - ], - data = [ - "@rbe_autoconf_custom_toolchain_config_suite_spec_export//test:empty", - "@rbe_autoconf_custom_toolchain_config_suite_spec_export//test:exported_testdata", - ], -) - -# tests that use rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions -# validate it generates configs when a blank versions.bzl -# file is used. -# Fails whenever a new Bazel version is out but configs aren't out -#sh_test( -# name = "rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions_test", -# srcs = [":rbe_autoconf_output_base_config_dir_checks.sh"], -# args = [ -# "$(location @rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions//test:empty)", -# "rbe-test-output/config/rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions", -# "default_toolchain_config_spec_name", -# _ubuntu1604_bazel, -# "assert_output_base_cc_confs", -# "assert_output_base_java_confs", -# "assert_output_base_platform_confs", -# ], -# data = [ -# ":rbe_autoconf_checks.sh", -# "@rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions//test:empty", -# "@rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions//test:exported_testdata", -# ], -#) - -sh_test( - name = "rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions_external_repo_test", - srcs = [":rbe_autoconf_checks.sh"], - args = [ - "$(location @rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions//test:empty)", - "assert_basic_cofig", - "assert_no_checked_in_confs", - "assert_checked_in_cc_confs", - "assert_java_confs", - "assert_no_configs_tar", - ], - data = [ - "@rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions//test:empty", - "@rbe_autoconf_custom_toolchain_config_suite_spec_blank_versions//test:exported_testdata", - ], -) - -# Verifies that all containers listed in the versions.bzl file used by -# rbe_autoconfig are available for pulling. -rbe_container_test( - name = "rbe_container_test", - size = "large", - images = [(("{}/{}@{}").format( - # use l.gcr.io to test with no auth required - "l.gcr.io", - default_toolchain_config_suite_spec()["container_repo"], - sha256, - )) for sha256 in RBE_CONTAINERS_MAP.keys()], - tags = ["no-remote"], -) - -go_library( - name = "go_default_library", - srcs = ["image_exists.go"], - importpath = "github.com/bazelbuild/bazel-toolchains/tests/rbe_repo", - visibility = ["//visibility:private"], - deps = [ - "@com_github_google_go_containerregistry//pkg/name:go_default_library", - "@com_github_google_go_containerregistry//pkg/v1/remote:go_default_library", - ], -) - -go_binary( - name = "image_exists", - embed = [":go_default_library"], - visibility = ["//visibility:public"], -) diff --git a/tests/rbe_repo/bazel_legacy_configs.yaml b/tests/rbe_repo/bazel_legacy_configs.yaml deleted file mode 100644 index 80bbe0f8f..000000000 --- a/tests/rbe_repo/bazel_legacy_configs.yaml +++ /dev/null @@ -1,39 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_default -# target with multiple versions of Bazel. -# Their purpose is to verify the checked in configs are usable on RBE -# with several older versions of Bazel - -# Proper functioning of these test requires the _BAZEL_VERSION and -# _CONTAINER_MAJOR_VERSION substitution parameters to be set in the trigger -# with name "config: /bazel_tests_cloudbuild.yaml {_BAZEL_VERSION}" -# in https://pantheon.corp.google.com/cloud-build/triggers?project=asci-toolchain. -# _BAZEL_VERSION should point to a version of Bazel to verify with these tests -# _CONTAINER_MAJOR_VERSION must correspond to a valid container major version -# for which a toolchain config was published for the given bazel version. - -steps: -# Test that runs with _BAZEL_VERSION and uses checked-in configs -# directly w/o using rbe_autoconfig. -# Configs must exist in this repo for the _CONTAINER_MAJOR_VERSION used -# for this test to pass. -# These tests should only be run for versions of Bazel < 0.25.0 -- name: 'l.gcr.io/google/bazel:${_BAZEL_VERSION}' - args: - - --bazelrc=../../bazelrc/.bazelrc.pre0260.notoolchain - - test - - --config=remote - - --host_javabase=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/java:jdk - - --javabase=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/config:cc-toolchain - - --extra_execution_platforms=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/config:platform - - --host_platform=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/config:platform - - --platforms=@bazel_toolchains//configs/ubuntu16_04_clang/${_CONTAINER_MAJOR_VERSION}/bazel_${_BAZEL_VERSION}/config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/bazel_legacy_rbe_default.yaml b/tests/rbe_repo/bazel_legacy_rbe_default.yaml deleted file mode 100644 index 2d1d4526f..000000000 --- a/tests/rbe_repo/bazel_legacy_rbe_default.yaml +++ /dev/null @@ -1,32 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_default -# target with multiple versions of Bazel. -# Their purpose is to verify the checked in configs are usable on RBE -# with several older versions of Bazel - -# Proper functioning of these test requires the _BAZEL_VERSION and -# _CONTAINER_MAJOR_VERSION substitution parameters to be set in the trigger -# with name "config: /bazel_tests_cloudbuild.yaml {_BAZEL_VERSION}" -# in https://pantheon.corp.google.com/cloud-build/triggers?project=asci-toolchain. -# _BAZEL_VERSION should point to a version of Bazel to verify with these tests -# _CONTAINER_MAJOR_VERSION must correspond to a valid container major version -# for which a toolchain config was published for the given bazel version. - -steps: -# Test that runs with rbe_autoconfig with Bazel ${_BAZEL_VERSION} -# that verifies that @rbe_default works for Bazel 0.20.0 - 0.25.0 -# These tests are separate from bazel_tests_cloudbuild.yaml as those -# tests depend on the bazelrc files numbered by versions. -# However, tests covered by this file have a bazelrc file that did -# not use @rbe_default. -# Starting with Bazel 0.26.0, @rbe_default is used in all bazelrc -# files, so bazel_tests_cloudbuild.yaml covers it. -- name: 'l.gcr.io/google/bazel:${_BAZEL_VERSION}' - args: - - --bazelrc=../../bazelrc/.bazelrc.pre0260 - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/bazel_tests_generate_confs.yaml b/tests/rbe_repo/bazel_tests_generate_confs.yaml deleted file mode 100644 index a337ac028..000000000 --- a/tests/rbe_repo/bazel_tests_generate_confs.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_default_generate -# target with multiple versions of Bazel. -# Their purpose is to verify that generated configs are usable on RBE. - -steps: -# Install bazelisk -- name: 'gcr.io/cloud-builders/wget' - entrypoint: ../bazelisk.sh - dir: 'tests/rbe_repo/examples' - -- name: 'l.gcr.io/google/bazel' - entrypoint: ../bazelisk - env: ['USE_BAZEL_VERSION=${_BAZEL_VERSION}'] - args: - - --bazelrc=../../bazelrc/${_BAZELRC_FILE} - - test - - --host_javabase=@rbe_default_generate//java:jdk - - --javabase=@rbe_default_generate//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_default_generate//cc:toolchain - - --extra_toolchains=@rbe_default_generate//config:cc-toolchain - - --extra_execution_platforms=@rbe_default_generate//config:platform - - --host_platform=@rbe_default_generate//config:platform - - --platforms=@rbe_default_generate//config:platform - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/bazelisk.sh b/tests/rbe_repo/bazelisk.sh deleted file mode 100755 index 58e2c2eab..000000000 --- a/tests/rbe_repo/bazelisk.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/usr/bin/env bash -# Copyright 2017 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. - -# Simple script to use bazel-toolchains srcs in the current client -# and add the rbe_default repo to WORKSPACE if it does not exist -# This script should be executed from the root of an external project's srcs - -set -ex -wget https://github.com/bazelbuild/bazelisk/releases/download/v0.0.8/bazelisk-linux-amd64 -mv bazelisk-linux-amd64 bazelisk -chmod 755 bazelisk diff --git a/tests/rbe_repo/bazelrc/.bazelrc.0260.notoolchain b/tests/rbe_repo/bazelrc/.bazelrc.0260.notoolchain deleted file mode 100644 index 84b433f96..000000000 --- a/tests/rbe_repo/bazelrc/.bazelrc.0260.notoolchain +++ /dev/null @@ -1,29 +0,0 @@ -# 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. - -# This .bazelrc file contains some of the flags required for the provided -# toolchain with Remote Build Execution. Specifically, it includes all flags - -build:remote --jobs=50 - -build:remote --spawn_strategy=remote -build:remote --strategy=Javac=remote -build:remote --strategy=Closure=remote -build:remote --strategy=Genrule=remote -build:remote --define=EXECUTOR=remote - -build:remote --remote_executor=grpcs://remotebuildexecution.googleapis.com -build:remote --remote_timeout=3600 -build:remote --google_default_credentials=true - diff --git a/tests/rbe_repo/bazelrc/.bazelrc.pre0260 b/tests/rbe_repo/bazelrc/.bazelrc.pre0260 deleted file mode 100644 index 81681f761..000000000 --- a/tests/rbe_repo/bazelrc/.bazelrc.pre0260 +++ /dev/null @@ -1,72 +0,0 @@ -# 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. - -# This .bazelrc file contains all of the flags required for the provided -# toolchain with Remote Build Execution for Bazel 0.20.0 - 0.25.0 -# with use of rbe_autoconfig -# -# Note your WORKSPACE must contain an rbe_autoconfig target with -# name="rbe_default" to use these flags as-is. - -# Depending on how many machines are in the remote execution instance, setting -# this higher can make builds faster by allowing more jobs to run in parallel. -# Setting it too high can result in jobs that timeout, however, while waiting -# for a remote machine to execute them. -build:remote --jobs=50 - -# Set several flags related to specifying the platform, toolchain and java -# properties. -# These flags should only be used as is for the rbe-ubuntu16-04 container -# and need to be adapted to work with other toolchain containers. -build:remote --host_javabase=@rbe_default//java:jdk -build:remote --javabase=@rbe_default//java:jdk -build:remote --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 -build:remote --crosstool_top=@rbe_default//cc:toolchain -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 -# Platform flags: -# The toolchain container used for execution is defined in the target indicated -# by "extra_execution_platforms", "host_platform" and "platforms". -# More about platforms: https://docs.bazel.build/versions/master/platforms.html -build:remote --extra_toolchains=@rbe_default//config:cc-toolchain -build:remote --extra_execution_platforms=@rbe_default//config:platform -build:remote --host_platform=@rbe_default//config:platform -build:remote --platforms=@rbe_default//config:platform - -# Set various strategies so that all actions execute remotely. Mixing remote -# and local execution will lead to errors unless the toolchain and remote -# machine exactly match the host machine. -build:remote --spawn_strategy=remote -build:remote --strategy=Javac=remote -build:remote --strategy=Closure=remote -build:remote --strategy=Genrule=remote -build:remote --define=EXECUTOR=remote - -# Enable the remote cache so action results can be shared across machines, -# developers, and workspaces. -build:remote --remote_cache=remotebuildexecution.googleapis.com - -# Enable remote execution so actions are performed on the remote systems. -build:remote --remote_executor=remotebuildexecution.googleapis.com - -# Enable encryption. -build:remote --tls_enabled=true - -# Set a higher timeout value, just in case. -build:remote --remote_timeout=3600 - -# Enable authentication. This will pick up application default credentials by -# default. You can use --auth_credentials=some_file.json to use a service -# account credential instead. -build:remote --auth_enabled=true diff --git a/tests/rbe_repo/bazelrc/.bazelrc.pre0260.notoolchain b/tests/rbe_repo/bazelrc/.bazelrc.pre0260.notoolchain deleted file mode 100644 index 82057d607..000000000 --- a/tests/rbe_repo/bazelrc/.bazelrc.pre0260.notoolchain +++ /dev/null @@ -1,33 +0,0 @@ -# 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. - -# This .bazelrc file contains all of the flags required for the provided -# toolchain with Remote Build Execution for Bazel 0.20.0 - 0.25.0 -# with use of rbe_autoconfig WITH NO TOOLCHAIN FLAGS - -build:remote --jobs=50 - -build:remote --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - -build:remote --spawn_strategy=remote -build:remote --strategy=Javac=remote -build:remote --strategy=Closure=remote -build:remote --strategy=Genrule=remote -build:remote --define=EXECUTOR=remote - -build:remote --remote_cache=remotebuildexecution.googleapis.com -build:remote --remote_executor=remotebuildexecution.googleapis.com -build:remote --tls_enabled=true -build:remote --remote_timeout=3600 -build:remote --auth_enabled=true diff --git a/tests/rbe_repo/blank_versions_test.bzl b/tests/rbe_repo/blank_versions_test.bzl deleted file mode 100644 index 5304a6548..000000000 --- a/tests/rbe_repo/blank_versions_test.bzl +++ /dev/null @@ -1,39 +0,0 @@ -# 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 -""" Provides test definitions - -Test file to validate behavior of rbe_autoconfig with export_configs -when repo is initially set up -""" - -_TOOLCHAIN_CONFIG_SPECS = [] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = "" - -# A map from supported Bazel versions mapped to supported config_spec names. -_BAZEL_TO_CONFIG_SPEC_NAMES = {} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "" - -# Map from sha256 of the toolchain container to corresponding config_spec names. -CONTAINER_TO_CONFIG_SPEC_NAMES = {} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/rbe_repo/checked_in_confs.yaml b/tests/rbe_repo/checked_in_confs.yaml deleted file mode 100644 index c4f871b12..000000000 --- a/tests/rbe_repo/checked_in_confs.yaml +++ /dev/null @@ -1,39 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_autoconf** -# targets. Their purpose is to verify the configs are usable on RBE. -# Tests below use checked in configs. -steps: -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_checked_in//java:jdk - - --javabase=@rbe_autoconf_checked_in//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_checked_in//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_checked_in//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_checked_in//config:platform - - --host_platform=@rbe_autoconf_checked_in//config:platform - - --platforms=@rbe_autoconf_checked_in//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_base_container_digest//java:jdk - - --javabase=@rbe_autoconf_base_container_digest//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_base_container_digest//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_base_container_digest//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_base_container_digest//config:platform - - --host_platform=@rbe_autoconf_base_container_digest//config:platform - - --platforms=@rbe_autoconf_base_container_digest//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test diff --git a/tests/rbe_repo/examples/README b/tests/rbe_repo/examples/README deleted file mode 100644 index 83e6fc280..000000000 --- a/tests/rbe_repo/examples/README +++ /dev/null @@ -1,6 +0,0 @@ -This folder contains examples that exercise use of rbe_autoconfig. -Examples are defined in two sub-repos that declare rbe_autoconfig -targets to either export configs (toolchain_config_host) or -to use them as a client (bazel_toolchains_client). - -The yaml describe GCB tests for these targets. diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/BUILD b/tests/rbe_repo/examples/bazel_toolchains_client/BUILD deleted file mode 100644 index 937b92030..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/BUILD +++ /dev/null @@ -1,34 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) - -cc_library( - name = "say_hello", - srcs = ["say_hello.cc"], - hdrs = ["say_hello.h"], -) - -cc_binary( - name = "hello_world", - srcs = ["hello_world.cc"], - deps = [":say_hello"], -) - -cc_test( - name = "say_hello_test", - size = "small", - srcs = ["say_hello_test.cc"], - deps = [":say_hello"], -) diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/BUILD.config_tar_test b/tests/rbe_repo/examples/bazel_toolchains_client/BUILD.config_tar_test deleted file mode 100644 index ebaac9652..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/BUILD.config_tar_test +++ /dev/null @@ -1,15 +0,0 @@ -# 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. - -package(default_visibility = ["//visibility:public"]) diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/WORKSPACE b/tests/rbe_repo/examples/bazel_toolchains_client/WORKSPACE deleted file mode 100644 index 1960f32e3..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/WORKSPACE +++ /dev/null @@ -1,251 +0,0 @@ -# Copyright 2017 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. - -workspace(name = "bazel_toolchains_client") - -local_repository( - name = "bazel_toolchains", - path = "../../../..", -) - -local_repository( - name = "toolchain_config_host", - path = "../toolchain_config_host", -) - -load( - "@bazel_tools//tools/build_defs/repo:http.bzl", - "http_archive", -) - -http_archive( - name = "java-sample", - sha256 = "38f0c15f9805e0635acb7df1ac22b82e411e1bf29ddad90aa25f6967897af602", - strip_prefix = "examples-5d8c8961a2516ebf875787df35e98cadd08d43dc/java-tutorial", - urls = [("https://github.com/bazelbuild/examples/archive/5d8c8961a2516ebf875787df35e98cadd08d43dc.tar.gz")], -) - -load("@bazel_toolchains//rules:rbe_repo.bzl", "rbe_autoconfig") - -rbe_autoconfig( - name = "rbe_default", - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_default_generate", - use_checked_in_confs = "False", -) - -rbe_autoconfig( - name = "rbe_jdk11", - java_home = "/usr/lib/jvm/11.29.3-ca-jdk11.0.2/reduced", - use_checked_in_confs = "Force", -) - -load( - "@toolchain_config_host//configs/test_configs:repo.bzl", - "CUSTOM_BAZEL_DIGEST1", - "CUSTOM_BAZEL_DIGEST2", - "CUSTOM_BAZEL_DIGEST3", - "CUSTOM_BAZEL_VERSION1", - "CUSTOM_BAZEL_VERSION2", - "CUSTOM_BAZEL_VERSION3", - "CUSTOM_ENV1", - "CUSTOM_ENV2", - "CUSTOM_ENV3", - "CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC", -) -load( - "@toolchain_config_host//configs/test_configs_no_java:repo.bzl", - NO_JAVA_TOOLCHAIN_CONFIG_SUITE_SPEC = "CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC", -) - -# Basic test for rbe_custom, the corresponding GCB build should first -# build the @toolchain_config_host so this one can use those. -rbe_autoconfig( - name = "rbe_custom", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# Should use checked-in configs as, even though container is specified, latest is -# set as tag. -rbe_autoconfig( - name = "rbe_custom_tag_latest", - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - tag = "latest", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# This test should generate configs as we use a custom env. -rbe_autoconfig( - name = "rbe_custom_generate_env", - env = {"CUSTOM_KEY": "CUSTOM_VALUE"}, - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -load( - "@bazel_toolchains//configs/ubuntu16_04_clang:versions.bzl", - toolchain_config_suite_autogen_spec = "TOOLCHAIN_CONFIG_AUTOGEN_SPEC", -) -load( - "@bazel_toolchains//configs/dependency-tracking:ubuntu1604.bzl", - _ubuntu1604_registry = "registry", - _ubuntu1604_repository = "repository", -) - -# This test uses the custom toolchain_config_suite_spec. It should not generate configs as, even -# though target overrides repository and digest (using rbe-ubuntu16-04 -# container), its setting the base container digest to point to a compatible -# bazel one for which configs are pre-generated. - -rbe_autoconfig( - name = "rbe_custom_base_container_digest", - base_container_digest = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC.get("toolchain_config_suite_autogen_spec").latest_container, - digest = toolchain_config_suite_autogen_spec.latest_container, - registry = _ubuntu1604_registry, - repository = _ubuntu1604_repository, - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# This one should not generate configs either, as, even though it uses a custom -# toolchain_config_spec_name, the preeceding step which builds @rbe_custom_toolchain_config_spec_name in -# @toolchain_config_host should generate the configs. -rbe_autoconfig( - name = "rbe_custom_toolchain_config_spec_name", - toolchain_config_spec_name = "test_toolchain_config_spec_name", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# The three tests below should not generate configs as the corresponding -# targets in @toolchain_config_host should pre-generate them. -# These tests validate the versions.bzl file can be modified by -# several configs and remain valid when different environements -# are used -rbe_autoconfig( - name = "rbe_custom_env1", - env = CUSTOM_ENV1, - toolchain_config_spec_name = "test_env1", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_custom_env2", - env = CUSTOM_ENV2, - toolchain_config_spec_name = "test_env2", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_custom_env3", - env = CUSTOM_ENV3, - toolchain_config_spec_name = "test_env3", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# The three tests below should not generate configs as the corresponding -# targets in @toolchain_config_host should pre-generate them. -# These tests validate the versions.bzl file can be modified by -# several configs and remain valid when different bazel versions -# are used -rbe_autoconfig( - name = "rbe_custom_bazel_version1", - bazel_version = CUSTOM_BAZEL_VERSION1, - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_custom_bazel_version2", - bazel_version = CUSTOM_BAZEL_VERSION2, - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_custom_bazel_version3", - bazel_version = CUSTOM_BAZEL_VERSION3, - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# The three tests below should not generate configs as the corresponding -# targets in @toolchain_config_host should pre-generate them. -# These tests validate the versions.bzl file can be modified by -# several configs and remain valid when different bazel versions -# and different container tags are used -rbe_autoconfig( - name = "rbe_custom_containers1", - bazel_version = CUSTOM_BAZEL_VERSION1, - digest = CUSTOM_BAZEL_DIGEST1, - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_custom_containers2", - bazel_version = CUSTOM_BAZEL_VERSION2, - digest = CUSTOM_BAZEL_DIGEST2, - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -rbe_autoconfig( - name = "rbe_custom_containers3", - bazel_version = CUSTOM_BAZEL_VERSION3, - digest = CUSTOM_BAZEL_DIGEST3, - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -# Test that validates files in a local repo (should have been extracted -# by build_and_extract_configs_tar from a configs.tar output -# produced by @rbe_custom. -new_local_repository( - name = "rbe_custom_config_tar", - build_file = "BUILD.config_tar_test", - path = "../config_out", -) - -rbe_autoconfig( - name = "rbe_custom_no_java", - create_java_configs = False, - toolchain_config_suite_spec = NO_JAVA_TOOLCHAIN_CONFIG_SUITE_SPEC, - use_checked_in_confs = "Force", -) - -load("@bazel_toolchains//rules:environments.bzl", "clang_env") - -# Used by GCB tests that run rbe_ubuntu_1804.yaml config -rbe_autoconfig( - name = "rbe_ubuntu1804", - env = clang_env(), - registry = "gcr.io", - repository = "cloud-marketplace/google/rbe-ubuntu18-04", - tag = "latest", -) diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/hello_world.cc b/tests/rbe_repo/examples/bazel_toolchains_client/hello_world.cc deleted file mode 100644 index 719cda0cd..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/hello_world.cc +++ /dev/null @@ -1,22 +0,0 @@ -// 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. - -#include "say_hello.h" - -#include - -int main(int argc, char** argv) { - std::cout << sayHello("world") << std::endl; - return 0; -} diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/say_hello.cc b/tests/rbe_repo/examples/bazel_toolchains_client/say_hello.cc deleted file mode 100644 index a5760eb9d..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/say_hello.cc +++ /dev/null @@ -1,19 +0,0 @@ -// 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. - -#include - -std::string sayHello(std::string name) { - return "Hello, " + name; -} diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/say_hello.h b/tests/rbe_repo/examples/bazel_toolchains_client/say_hello.h deleted file mode 100644 index c446abfc0..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/say_hello.h +++ /dev/null @@ -1,17 +0,0 @@ -// 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. - -#include - -std::string sayHello(std::string name); diff --git a/tests/rbe_repo/examples/bazel_toolchains_client/say_hello_test.cc b/tests/rbe_repo/examples/bazel_toolchains_client/say_hello_test.cc deleted file mode 100644 index 41b30d575..000000000 --- a/tests/rbe_repo/examples/bazel_toolchains_client/say_hello_test.cc +++ /dev/null @@ -1,28 +0,0 @@ -// 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. - -#include "say_hello.h" - -#include -#include - -int main(int argc, char** argv) { - std::string res = sayHello("user"); - std::string expect = "Hello, user"; - if (res != expect) { - std::cout << "Want '" << expect << "', got '" << res << "'" << std::endl; - return 1; - } - return 0; -} diff --git a/tests/rbe_repo/examples/build_and_extract_configs_tar.sh b/tests/rbe_repo/examples/build_and_extract_configs_tar.sh deleted file mode 100755 index 6c42023f5..000000000 --- a/tests/rbe_repo/examples/build_and_extract_configs_tar.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -# This bash script runs a bazel build for rbe_autoconfig -# and extracts the produced tar file. Should only be used by -# rbe_custom_config_tar.yaml - -set -ex - -# Build @rbe_custom -bazel build @rbe_custom_config_tar//... - -# Extract the produced configs.tar -mkdir ../config_out -tar -xf $(bazel info output_base)/external/rbe_custom_config_tar/configs.tar -C ../config_out diff --git a/tests/rbe_repo/examples/rbe_custom.yaml b/tests/rbe_repo/examples/rbe_custom.yaml deleted file mode 100644 index 1a8a0f312..000000000 --- a/tests/rbe_repo/examples/rbe_custom.yaml +++ /dev/null @@ -1,34 +0,0 @@ -steps: -# Build the @rbe_custom toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom//..." - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom - - --host_javabase=@rbe_custom//java:jdk - - --javabase=@rbe_custom//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom//config:platform - - --host_platform=@rbe_custom//config:platform - - --platforms=@rbe_custom//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_base_container_digest.yaml b/tests/rbe_repo/examples/rbe_custom_base_container_digest.yaml deleted file mode 100644 index b0b1bef5d..000000000 --- a/tests/rbe_repo/examples/rbe_custom_base_container_digest.yaml +++ /dev/null @@ -1,34 +0,0 @@ -steps: -# Build the @rbe_custom toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom//..." - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom_base_container_digest -# toolchain configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_base_container_digest - - --host_javabase=@rbe_custom_base_container_digest//java:jdk - - --javabase=@rbe_custom_base_container_digest//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_base_container_digest//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_base_container_digest//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom//config:platform - - --host_platform=@rbe_custom_base_container_digest//config:platform - - --platforms=@rbe_custom_base_container_digest//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_bazel_versions.yaml b/tests/rbe_repo/examples/rbe_custom_bazel_versions.yaml deleted file mode 100644 index ea3c50ef1..000000000 --- a/tests/rbe_repo/examples/rbe_custom_bazel_versions.yaml +++ /dev/null @@ -1,99 +0,0 @@ -steps: -# Build the @rbe_custom_bazel_version* toolchain -# configs. -# Build cannot be run in parallel as we need the steps to sequentially modify versions.bzl -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_bazel_version1//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_bazel_version2//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_bazel_version3//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -# Launch a RBE hello world build + unit test using the @rbe_custom_bazel_version* toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_bazel_version1 - - --host_javabase=@rbe_custom_bazel_version1//java:jdk - - --javabase=@rbe_custom_bazel_version1//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_bazel_version1//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_bazel_version1//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_bazel_version1//config:platform - - --host_platform=@rbe_custom_bazel_version1//config:platform - - --platforms=@rbe_custom_bazel_version1//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_bazel_version2 - - --host_javabase=@rbe_custom_bazel_version2//java:jdk - - --javabase=@rbe_custom_bazel_version2//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_bazel_version2//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_bazel_version2//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_bazel_version2//config:platform - - --host_platform=@rbe_custom_bazel_version2//config:platform - - --platforms=@rbe_custom_bazel_version2//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_bazel_version3 - - --host_javabase=@rbe_custom_bazel_version3//java:jdk - - --javabase=@rbe_custom_bazel_version3//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_bazel_version3//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_bazel_version3//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_bazel_version3//config:platform - - --host_platform=@rbe_custom_bazel_version3//config:platform - - --platforms=@rbe_custom_bazel_version3//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -# These builds might take a bit more time as they are generating -# several toolchain configs. -timeout: 1200s diff --git a/tests/rbe_repo/examples/rbe_custom_config_tar.yaml b/tests/rbe_repo/examples/rbe_custom_config_tar.yaml deleted file mode 100644 index 26f3726cb..000000000 --- a/tests/rbe_repo/examples/rbe_custom_config_tar.yaml +++ /dev/null @@ -1,30 +0,0 @@ -steps: -# Build the @rbe_custom toolchain configs using -# the script that also extracts the config.tar file produced -- name: 'l.gcr.io/google/bazel' - entrypoint: '../build_and_extract_configs_tar.sh' - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom_config_tar toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - //:say_hello_test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_config_tar - - --host_javabase=@rbe_custom_config_tar//java:jdk - - --javabase=@rbe_custom_config_tar//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_config_tar//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_config_tar//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_config_tar//config:platform - - --host_platform=@rbe_custom_config_tar//config:platform - - --platforms=@rbe_custom_config_tar//config:platform - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_containers.yaml b/tests/rbe_repo/examples/rbe_custom_containers.yaml deleted file mode 100644 index a2162f226..000000000 --- a/tests/rbe_repo/examples/rbe_custom_containers.yaml +++ /dev/null @@ -1,99 +0,0 @@ -steps: -# Build the @rbe_custom_containers* toolchain -# configs. -# Build cannot be run in parallel as we need the steps to sequentially modify versions.bzl -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_containers1//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_containers2//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_containers3//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -# Launch a RBE hello world build + unit test using the @rbe_custom_containers* toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_containers1 - - --host_javabase=@rbe_custom_containers1//java:jdk - - --javabase=@rbe_custom_containers1//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_containers1//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_containers1//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_containers1//config:platform - - --host_platform=@rbe_custom_containers1//config:platform - - --platforms=@rbe_custom_containers1//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_containers2 - - --host_javabase=@rbe_custom_containers2//java:jdk - - --javabase=@rbe_custom_containers2//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_containers2//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_containers2//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_containers2//config:platform - - --host_platform=@rbe_custom_containers2//config:platform - - --platforms=@rbe_custom_containers2//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_containers3 - - --host_javabase=@rbe_custom_containers3//java:jdk - - --javabase=@rbe_custom_containers3//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_containers3//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_containers3//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_containers3//config:platform - - --host_platform=@rbe_custom_containers3//config:platform - - --platforms=@rbe_custom_containers3//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -# These builds might take a bit more time as they are generating -# several toolchain configs. -timeout: 1200s diff --git a/tests/rbe_repo/examples/rbe_custom_env.yaml b/tests/rbe_repo/examples/rbe_custom_env.yaml deleted file mode 100644 index f2e78da66..000000000 --- a/tests/rbe_repo/examples/rbe_custom_env.yaml +++ /dev/null @@ -1,95 +0,0 @@ -steps: -# Build the @rbe_custom_env* toolchain -# configs. -# Build cannot be run in parallel as we need the steps to sequentially modify versions.bzl -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_env1//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_env2//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_env3//..." - - --loading_phase_threads=1 - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - -# Launch a RBE hello world build + unit test using the @rbe_custom_env* toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_env1 - - --host_javabase=@rbe_custom_env1//java:jdk - - --javabase=@rbe_custom_env1//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_env1//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_env1//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_env1//config:platform - - --host_platform=@rbe_custom_env1//config:platform - - --platforms=@rbe_custom_env1//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_env2 - - --host_javabase=@rbe_custom_env2//java:jdk - - --javabase=@rbe_custom_env2//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_env2//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_env2//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_env2//config:platform - - --host_platform=@rbe_custom_env2//config:platform - - --platforms=@rbe_custom_env2//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' - -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_env3 - - --host_javabase=@rbe_custom_env3//java:jdk - - --javabase=@rbe_custom_env3//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_env3//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_env3//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_env3//config:platform - - --host_platform=@rbe_custom_env3//config:platform - - --platforms=@rbe_custom_env3//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_generate_env.yaml b/tests/rbe_repo/examples/rbe_custom_generate_env.yaml deleted file mode 100644 index c46c5d722..000000000 --- a/tests/rbe_repo/examples/rbe_custom_generate_env.yaml +++ /dev/null @@ -1,34 +0,0 @@ -steps: -# Build the @rbe_custom toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom//..." - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom_generate_env -# toolchain configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_generate_env - - --host_javabase=@rbe_custom_generate_env//java:jdk - - --javabase=@rbe_custom_generate_env//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_generate_env//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_generate_env//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_generate_env//config:platform - - --host_platform=@rbe_custom_generate_env//config:platform - - --platforms=@rbe_custom_generate_env//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_no_java.yaml b/tests/rbe_repo/examples/rbe_custom_no_java.yaml deleted file mode 100644 index f62e4b6bb..000000000 --- a/tests/rbe_repo/examples/rbe_custom_no_java.yaml +++ /dev/null @@ -1,30 +0,0 @@ -steps: -# Build the @rbe_custom_no_java toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_no_java//..." - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom_no_java toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - build - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_no_java - - --crosstool_top=@rbe_custom_no_java//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_no_java//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_no_java//config:platform - - --host_platform=@rbe_custom_no_java//config:platform - - --platforms=@rbe_custom_no_java//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_tag_latest.yaml b/tests/rbe_repo/examples/rbe_custom_tag_latest.yaml deleted file mode 100644 index becad1b0f..000000000 --- a/tests/rbe_repo/examples/rbe_custom_tag_latest.yaml +++ /dev/null @@ -1,34 +0,0 @@ -steps: -# Build the @rbe_custom toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom//..." - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom_tag_latest toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom - - --host_javabase=@rbe_custom_tag_latest//java:jdk - - --javabase=@rbe_custom_tag_latest//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_tag_latest//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_tag_latest//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom//config:platform - - --host_platform=@rbe_custom_tag_latest//config:platform - - --platforms=@rbe_custom_tag_latest//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_custom_toolchain_config_spec_name.yaml b/tests/rbe_repo/examples/rbe_custom_toolchain_config_spec_name.yaml deleted file mode 100644 index 9f3d08e92..000000000 --- a/tests/rbe_repo/examples/rbe_custom_toolchain_config_spec_name.yaml +++ /dev/null @@ -1,34 +0,0 @@ -steps: -# Build the @rbe_custom_toolchain_config_spec_name toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - build - - "@rbe_custom_toolchain_config_spec_name//..." - dir: 'tests/rbe_repo/examples/toolchain_config_host' - env: ['RBE_AUTOCONF_ROOT=/workspace/tests/rbe_repo/examples/toolchain_config_host'] - - -# Launch a RBE hello world build + unit test using the @rbe_custom_toolchain_config_spec_name toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_custom_toolchain_config_spec_name - - --host_javabase=@rbe_custom_toolchain_config_spec_name//java:jdk - - --javabase=@rbe_custom_toolchain_config_spec_name//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_custom_toolchain_config_spec_name//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_custom_toolchain_config_spec_name//config:cc-toolchain - - --extra_execution_platforms=@rbe_custom_toolchain_config_spec_name//config:platform - - --host_platform=@rbe_custom_toolchain_config_spec_name//config:platform - - --platforms=@rbe_custom_toolchain_config_spec_name//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/rbe_default_jdk11.yaml b/tests/rbe_repo/examples/rbe_default_jdk11.yaml deleted file mode 100644 index d69caea29..000000000 --- a/tests/rbe_repo/examples/rbe_default_jdk11.yaml +++ /dev/null @@ -1,22 +0,0 @@ -steps: -# Launch a RBE hello world build + unit test using the @rbe_jdk11 toolchain -# configs. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=../../../../bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - # toolchain flags to use @rbe_jdk11 - - --host_javabase=@rbe_jdk11//java:jdk - - --javabase=@rbe_jdk11//java:jdk - - --crosstool_top=@rbe_jdk11//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_jdk11//config:cc-toolchain - - --extra_execution_platforms=@rbe_jdk11//config:platform - - --host_platform=@rbe_jdk11//config:platform - - --platforms=@rbe_jdk11//config:platform - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/examples/toolchain_config_host/WORKSPACE b/tests/rbe_repo/examples/toolchain_config_host/WORKSPACE deleted file mode 100644 index 2ba49b568..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/WORKSPACE +++ /dev/null @@ -1,142 +0,0 @@ -# Copyright 2017 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. - -workspace(name = "toolchain_config_host") - -local_repository( - name = "bazel_toolchains", - path = "../../../..", -) - -load("@bazel_toolchains//rules:rbe_repo.bzl", "rbe_autoconfig") -load( - "//configs/test_configs:repo.bzl", - "CUSTOM_BAZEL_DIGEST1", - "CUSTOM_BAZEL_DIGEST2", - "CUSTOM_BAZEL_DIGEST3", - "CUSTOM_BAZEL_VERSION1", - "CUSTOM_BAZEL_VERSION2", - "CUSTOM_BAZEL_VERSION3", - "CUSTOM_ENV1", - "CUSTOM_ENV2", - "CUSTOM_ENV3", - "CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC", -) -load( - "//configs/test_configs_no_java:repo.bzl", - NO_JAVA_TOOLCHAIN_CONFIG_SUITE_SPEC = "CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC", -) - -rbe_autoconfig( - name = "rbe_custom", - export_configs = True, - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_toolchain_config_spec_name", - export_configs = True, - toolchain_config_spec_name = "test_toolchain_config_spec_name", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_env1", - env = CUSTOM_ENV1, - export_configs = True, - toolchain_config_spec_name = "test_env1", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_env2", - env = CUSTOM_ENV2, - export_configs = True, - toolchain_config_spec_name = "test_env2", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_env3", - env = CUSTOM_ENV3, - export_configs = True, - toolchain_config_spec_name = "test_env3", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_bazel_version1", - bazel_version = CUSTOM_BAZEL_VERSION1, - export_configs = True, - toolchain_config_spec_name = "test_bazel_version1", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_bazel_version2", - bazel_version = CUSTOM_BAZEL_VERSION2, - export_configs = True, - toolchain_config_spec_name = "test_bazel_version2", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_bazel_version3", - bazel_version = CUSTOM_BAZEL_VERSION3, - export_configs = True, - toolchain_config_spec_name = "test_bazel_version3", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_containers1", - bazel_version = CUSTOM_BAZEL_VERSION1, - digest = CUSTOM_BAZEL_DIGEST1, - export_configs = True, - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_containers2", - bazel_version = CUSTOM_BAZEL_VERSION2, - digest = CUSTOM_BAZEL_DIGEST2, - export_configs = True, - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_containers3", - bazel_version = CUSTOM_BAZEL_VERSION3, - digest = CUSTOM_BAZEL_DIGEST3, - export_configs = True, - registry = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_registry"], - repository = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC["container_repo"], - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_config_tar", - toolchain_config_suite_spec = CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC, -) - -rbe_autoconfig( - name = "rbe_custom_no_java", - create_java_configs = False, - export_configs = True, - toolchain_config_suite_spec = NO_JAVA_TOOLCHAIN_CONFIG_SUITE_SPEC, -) diff --git a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/BUILD b/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/BUILD deleted file mode 100644 index 9c1604a12..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/BUILD +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) diff --git a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/repo.bzl b/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/repo.bzl deleted file mode 100644 index 60c43b2c0..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/repo.bzl +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2017 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. -""" Definitions for a custom rbe_repo.""" - -load(":versions.bzl", "TOOLCHAIN_CONFIG_AUTOGEN_SPEC") - -CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC = { - "repo_name": "toolchain_config_host", - "output_base": "configs/test_configs", - "container_repo": "google/bazel", - "container_registry": "marketplace.gcr.io", - "toolchain_config_suite_autogen_spec": TOOLCHAIN_CONFIG_AUTOGEN_SPEC, -} - -CUSTOM_ENV1 = {"KEY1": "VALUE1"} -CUSTOM_ENV2 = {"KEY2": "VALUE2"} -CUSTOM_ENV3 = {"KEY3": "VALUE3"} - -CUSTOM_BAZEL_VERSION1 = "0.24.0" -CUSTOM_BAZEL_VERSION2 = "0.25.0" -CUSTOM_BAZEL_VERSION3 = "0.26.0" - -CUSTOM_BAZEL_DIGEST1 = "sha256:74bcb3dc68bf69a9c930fdb00e28e4c46bbb413a502ee45e8e3ca8a73f28dd3d" -CUSTOM_BAZEL_DIGEST2 = "sha256:3a608fe476a29237b08a50b3ad05604308b0154c8abd0bbf6809a89913cbeedc" -CUSTOM_BAZEL_DIGEST3 = "sha256:a2b4d40beb133924c3eaadb5b596fc0fbf3d8f30828deb99ecb3b305cc0ec38a" diff --git a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/versions.bzl b/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/versions.bzl deleted file mode 100644 index d0f002d5b..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs/versions.bzl +++ /dev/null @@ -1,24 +0,0 @@ -# Generated file, do not modify by hand -# Generated by rbe_custom rbe_autoconfig rule -""""Definitions to be used in rbe_repo attr of an rbe_autoconf rule. """ - -_TOOLCHAIN_CONFIG_SPECS = [] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = "" - -# A map from supported Bazel versions mapped to supported config_spec names. -_BAZEL_TO_CONFIG_SPEC_NAMES = {} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "" - -# Map from sha256 of the toolchain container to corresponding config_spec names. -CONTAINER_TO_CONFIG_SPEC_NAMES = {} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/BUILD b/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/BUILD deleted file mode 100644 index 9c1604a12..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/BUILD +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright 2017 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. - -licenses(["notice"]) # Apache 2.0 - -package(default_visibility = ["//visibility:public"]) diff --git a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/repo.bzl b/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/repo.bzl deleted file mode 100644 index c0cffb3b3..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/repo.bzl +++ /dev/null @@ -1,24 +0,0 @@ -# Copyright 2017 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. -""" Definitions for a custom rbe_repo.""" - -load(":versions.bzl", "TOOLCHAIN_CONFIG_AUTOGEN_SPEC") - -CUSTOM_TOOLCHAIN_CONFIG_SUITE_SPEC = { - "repo_name": "toolchain_config_host", - "output_base": "configs/test_configs_no_java", - "container_repo": "google/bazel", - "container_registry": "marketplace.gcr.io", - "toolchain_config_suite_autogen_spec": TOOLCHAIN_CONFIG_AUTOGEN_SPEC, -} diff --git a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/versions.bzl b/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/versions.bzl deleted file mode 100644 index 373d3b348..000000000 --- a/tests/rbe_repo/examples/toolchain_config_host/configs/test_configs_no_java/versions.bzl +++ /dev/null @@ -1,24 +0,0 @@ -# Generated file, do not modify by hand -# Generated by rbe_custom rbe_autoconfig rule -""""Definitions to be used in rbe_repo attr of an rbe_autoconf rule. """ - -_TOOLCHAIN_CONFIG_SPECS = [] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = "" - -# A map from supported Bazel versions mapped to supported config_spec names. -_BAZEL_TO_CONFIG_SPEC_NAMES = {} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "" - -# Map from sha256 of the toolchain container to corresponding config_spec names. -_CONTAINER_TO_CONFIG_SPEC_NAMES = {} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = _CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/rbe_repo/generate_confs.yaml b/tests/rbe_repo/generate_confs.yaml deleted file mode 100644 index 70e18f507..000000000 --- a/tests/rbe_repo/generate_confs.yaml +++ /dev/null @@ -1,109 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_autoconf** -# targets. Their purpose is to verify the configs are usable on RBE. -# Tests below generate configs and use them directly in an RBE -# Build. -timeout: 1200s -steps: -# Tests rbe_autoconf generated artifacts are usable for an RBE build. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_generate//java:jdk - - --javabase=@rbe_autoconf_generate//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_generate//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_generate//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_generate//config:platform - - --host_platform=@rbe_autoconf_generate//config:platform - - --platforms=@rbe_autoconf_generate//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - -# Tests rbe_autoconf generated artifacts, when config_repos attr is used, -# are usable for an RBE build. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_config_repos//java:jdk - - --javabase=@rbe_autoconf_config_repos//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_config_repos//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_config_repos//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_config_repos//config:platform - - --host_platform=@rbe_autoconf_config_repos//config:platform - - --platforms=@rbe_autoconf_config_repos//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - env: ['RBE_AUTOCONF_ROOT=/workspace'] - -# Tests rbe_autoconf generated artifacts, when an older rbe container -# is selected, are usable for an RBE build. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_old_container//java:jdk - - --javabase=@rbe_autoconf_old_container//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_old_container//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_old_container//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_old_container//config:platform - - --host_platform=@rbe_autoconf_old_container//config:platform - - --platforms=@rbe_autoconf_old_container//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - env: ['RBE_AUTOCONF_ROOT=/workspace'] - -# Tests rbe_autoconf generated artifacts, when tag is used -# to identify the container, are usable for an RBE build. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_resovle_tag//java:jdk - - --javabase=@rbe_autoconf_resovle_tag//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_resovle_tag//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_resovle_tag//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_resovle_tag//config:platform - - --host_platform=@rbe_autoconf_resovle_tag//config:platform - - --platforms=@rbe_autoconf_resovle_tag//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - env: ['RBE_AUTOCONF_ROOT=/workspace'] - -# Tests rbe_autoconf generated artifacts, when a custom container is used, -# are usable for an RBE build. -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_custom_container//java:jdk - - --javabase=@rbe_autoconf_custom_container//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_custom_container//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_custom_container//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_custom_container//config:platform - - --host_platform=@rbe_autoconf_custom_container//config:platform - - --platforms=@rbe_autoconf_custom_container//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - env: ['RBE_AUTOCONF_ROOT=/workspace'] - diff --git a/tests/rbe_repo/image_exists.go b/tests/rbe_repo/image_exists.go deleted file mode 100644 index 5fd97e785..000000000 --- a/tests/rbe_repo/image_exists.go +++ /dev/null @@ -1,88 +0,0 @@ -// Binary image_exists checks if a image on a remote repository by fetching -// and examining its manifest but not downloading any of the layer blobs. -package main - -import ( - "flag" - "fmt" - "log" - - "github.com/google/go-containerregistry/pkg/name" - "github.com/google/go-containerregistry/pkg/v1/remote" -) - -// ArrayStringFlags are defined for string flags that may have multiple values. -type ArrayStringFlags []string - -// Returns the concatenated string representation of the array of flags. -func (f *ArrayStringFlags) String() string { - return fmt.Sprintf("%v", *f) -} - -// Get returns an empty interface that may be type-asserted to the underlying -// value of type bool, string, etc. -func (f *ArrayStringFlags) Get() interface{} { - return "" -} - -// Set appends value the array of flags. -func (f *ArrayStringFlags) Set(value string) error { - *f = append(*f, value) - return nil -} - -func checkImage(image string) error { - ref, err := name.ParseReference(image) - if err != nil { - return fmt.Errorf("failed to parse image name %q: %v", image, err) - } - img, err := remote.Image(ref) - if err != nil { - return fmt.Errorf("failed to reference remote image %q: %v", image, err) - } - - d, err := img.Digest() - if err != nil { - return fmt.Errorf("failed to determine digest of image %q: %v", image, err) - } - layers, err := img.Layers() - if err != nil { - return fmt.Errorf("failed to get layers in image %q: %v", image, err) - } - for i, l := range layers { - d, err := l.Digest() - if err != nil { - return fmt.Errorf("failed to get digest of layer %d in image %q: %v", i, image, err) - } - s, err := l.Size() - if err != nil { - return fmt.Errorf("failed to get size of layer %d with digest %v in image %q: %v", i, d, image, err) - } - log.Printf("Image %s: Layer [%d] digest:%v size:%d OK.", image, i, d, s) - } - log.Printf("Successfully validated image %q exists: digest %v with %d layers.", image, d, len(layers)) - return nil -} - -func main() { - images := ArrayStringFlags{} - flag.Var(&images, "image", "One or more fully qualified remote image name to check.") - flag.Parse() - - if len(images) == 0 { - log.Fatalf("At least one image must be specified using --image for validation.") - } - - errors := 0 - for _, i := range images { - if err := checkImage(i); err != nil { - log.Printf("ERROR: %q: %v", i, err) - errors++ - } - } - - if errors > 0 { - log.Fatalf("Validation failed for %d images.", errors) - } - log.Printf("Successfully validated %d images.", len(images)) -} diff --git a/tests/rbe_repo/output_base.yaml b/tests/rbe_repo/output_base.yaml deleted file mode 100644 index 75046b1fb..000000000 --- a/tests/rbe_repo/output_base.yaml +++ /dev/null @@ -1,49 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_autoconf** -# targets. Their purpose is to verify the configs are usable on RBE. -# Tests below generate configs in the output_base and then -# use those for RBE builds. -steps: -# Builds rbe_autoconfig targets -- name: 'l.gcr.io/google/bazel' - args: - - build - - -- - - "@rbe_autoconf_gcb_test//..." - env: ['RBE_AUTOCONF_ROOT=/workspace'] - -# Tests rbe_autoconf, when output_base is used, produces outputs that are -# usable for an RBE build. -# This test uses the configs via their path in the output_base -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/latest.bazelrc - - test - - --config=remote - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - env: ['RBE_AUTOCONF_ROOT=/workspace'] - -# Tests rbe_autoconf, when output_base is used, produces outputs that are -# usable for an RBE build. -# This test uses the configs via their path in the external repo -- name: 'l.gcr.io/google/bazel' - args: - - --bazelrc=bazelrc/.bazelrc.notoolchain - - test - - --config=remote - - --host_javabase=@rbe_autoconf_gcb_test//java:jdk - - --javabase=@rbe_autoconf_gcb_test//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_autoconf_gcb_test//cc:toolchain - - --action_env=BAZEL_DO_NOT_DETECT_CPP_TOOLCHAIN=1 - - --extra_toolchains=@rbe_autoconf_gcb_test//config:cc-toolchain - - --extra_execution_platforms=@rbe_autoconf_gcb_test//config:platform - - --host_platform=@rbe_autoconf_gcb_test//config:platform - - --platforms=@rbe_autoconf_gcb_test//config:platform - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - //examples/remotebuildexecution/hello_world/cc:say_hello_test - env: ['RBE_AUTOCONF_ROOT=/workspace'] - diff --git a/tests/rbe_repo/rbe_autoconf_checks.sh b/tests/rbe_repo/rbe_autoconf_checks.sh deleted file mode 100755 index f693adfeb..000000000 --- a/tests/rbe_repo/rbe_autoconf_checks.sh +++ /dev/null @@ -1,191 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -# This bash script defines common assertion functions for rbe_autoconfig -# file checks. -# Usage: Use only from an sh_test target. -# First argument is the location of the empty file in the test -# directory produced by rbe_autoconfig when create_testdata attr -# is used. -# All remaining args are interpreted as calls to functions in this -# file. - -set -e - -assert_file_not_exists() { - FILE=$1 - if [ ! -f $FILE ]; then - echo "File $FILE does not exist." - echo "Passed" - else - echo "Failed: $FILE exists." - exit 1 - fi -} - -assert_file_exists() { - FILE=$1 - if [ ! -f $FILE ]; then - echo "File $FILE does not exist." - exit 1 - else - echo "Failed: $FILE exists." - echo "Passed" - fi -} - -# Checks the config BUILD file was created -assert_basic_cofig() { - assert_file_exists ${DIR}/config/test.BUILD -} - -# Checks that files not needed when using checked-in -# configs are not generated -assert_checked_in_confs() { - assert_file_not_exists ${DIR}/output.tar - assert_file_not_exists ${DIR}/run_and_extract.sh -} - -# Checks that files needed when creating configs -# were generated -assert_no_checked_in_confs() { - assert_file_exists ${DIR}/output.tar - assert_file_exists ${DIR}/run_and_extract.sh - assert_file_exists ${DIR}/container/run_in_container.sh -} - -# Checks the dummy file produced after image is pulled is present -assert_image_pulled() { - assert_file_exists ${DIR}/image_name -} - -# Checks the dummy file produced after image is pulled is not present -assert_image_not_pulled() { - assert_file_not_exists ${DIR}/image_name -} - -# Checks that java config files were generated -assert_java_confs() { - assert_file_exists ${DIR}/java/test.BUILD -} - -# Checks that java config files were not generated -assert_no_java_confs() { - assert_file_not_exists ${DIR}/java/test.BUILD -} - -# Checks that cc config files were generated -assert_cc_confs() { - assert_file_exists ${DIR}/cc/test.BUILD - assert_file_exists ${DIR}/cc/cc_toolchain_config.bzl - assert_file_exists ${DIR}/cc/cc_wrapper.sh -} - -# Checks that Windows cc config files were generated -assert_cc_confs_windows() { - assert_file_exists ${DIR}/cc/test.BUILD - assert_file_exists ${DIR}/cc/windows_cc_toolchain_config.bzl -} - -# Checks that checked in configs were selected -assert_checked_in_cc_confs() { - assert_file_exists ${DIR}/cc/test.BUILD - assert_file_not_exists ${DIR}/cc/cc_toolchain_config.bzl - assert_file_not_exists ${DIR}/cc/cc_wrapper.sh -} - -# Checks that cc config files were not generated -assert_no_cc_confs() { - assert_file_not_exists ${DIR}/cc/test.BUILD - assert_file_not_exists ${DIR}/cc/cc_toolchain_config.bzl - assert_file_not_exists ${DIR}/cc/cc_wrapper.sh -} - -# Checks that java_home was read from container -assert_java_home() { - assert_file_exists ${DIR}/get_java_home.sh -} - -# Checks that java_home was not read from container -assert_no_java_home() { - assert_file_not_exists ${DIR}/get_java_home.sh -} - -# Checks that cc config files were generated in the output_base -assert_output_base_cc_confs() { - assert_file_exists ${DIR}/cc/test.BUILD - assert_file_exists ${DIR}/cc/cc_toolchain_config.bzl - assert_file_exists ${DIR}/cc/cc_wrapper.sh -} - -# Checks that Windows cc config files were generated in the output_base -assert_output_base_cc_confs_windows() { - assert_file_exists ${DIR}/cc/test.BUILD - assert_file_exists ${DIR}/cc/windows_cc_toolchain_config.bzl -} - -# Checks that cc config files were not generated in the output_base -assert_output_base_no_cc_confs() { - assert_file_not_exists ${DIR}/cc/test.BUILD - assert_file_not_exists ${DIR}/cc/cc_toolchain_config.bzl - assert_file_not_exists ${DIR}/cc/cc_wrapper.sh -} - -# Checks that java config files were generated in the output_base -assert_output_base_java_confs() { - assert_file_exists ${DIR}/java/test.BUILD -} - -# Checks that java config files were not generated in the output_base -assert_output_base_no_java_confs() { - assert_file_not_exists ${DIR}/java/test.BUILD -} - -# Checks that platform config files + additional output files -# were generated in the output_base -assert_output_base_platform_confs() { - assert_file_exists ${DIR}/config/test.BUILD - assert_file_exists ${DIR}/../../.latest.bazelrc - assert_file_exists ${DIR}/../../versions.bzl -} - -# Checks that files for custom repos (bazel_skylib, local_config_sh) -# were generated in the output_base -assert_output_base_custom_confs() { - assert_file_exists ${DIR}/local_config_sh/WORKSPACE - assert_file_exists ${DIR}/local_config_sh/test.BUILD -} - -# Checks that configs.tar file to export configs was generated in the remote repo -# when export_configs was NOT used -assert_configs_tar() { - assert_file_exists ${DIR}/configs.tar -} - -# Checks that configs.tar file to export configs was NOT generated in the remote repo -# when export_configs was used -assert_no_configs_tar() { - assert_file_not_exists ${DIR}/configs.tar -} - -EMPTY_FILE=$1 -DIR=$(dirname "${EMPTY_FILE}") -for var in "$@" -do - if [ "$var" != "$1" ]; then - $var - fi -done diff --git a/tests/rbe_repo/rbe_autoconf_output_base_config_dir_checks.sh b/tests/rbe_repo/rbe_autoconf_output_base_config_dir_checks.sh deleted file mode 100755 index ff012b685..000000000 --- a/tests/rbe_repo/rbe_autoconf_output_base_config_dir_checks.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/bash -# -# Copyright 2017 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. - -# This bash script provides an entry point for checks for -# rbe_autoconfig that use output_base and config_dir. -# It wraps around rbe_autoconf_checks in order -# to resolve the directory where files are to be checked. -# Usage: Use only from an sh_test target. -# First argument is the location of the AUTOCONF_ROOT file which -# has a single line with the absolute path to the root of the project. -# The second argument is the output_base declared in the rbe_autoconfig -# rule that is tested. -# Third argument is the config_dir declared in the rbe_autoconfig -# rule that is tested. -# The fourth argument is the Bazel version. -# All remaining args are interpreted as calls to functions in -# rbe_autoconf_checks. - -set -e - -AUTOCONF_ROOT=$(dirname $1)/rbe_autoconf_root -OUTPUT_BASE=$2 -CONFIG_DIR=$3 -BAZEL_VERSION=$4 - -OUTPUT_BASE_EMPTY=${AUTOCONF_ROOT}/${OUTPUT_BASE}/${CONFIG_DIR}/bazel_${BAZEL_VERSION}/empty -set -- ${OUTPUT_BASE_EMPTY} "${@:5}" - -source tests/rbe_repo/rbe_autoconf_checks.sh diff --git a/tests/rbe_repo/rbe_container_test.bzl b/tests/rbe_repo/rbe_container_test.bzl deleted file mode 100644 index a9ab4da67..000000000 --- a/tests/rbe_repo/rbe_container_test.bzl +++ /dev/null @@ -1,30 +0,0 @@ -""" -Defines a test rule to check images on remote repositories actually exist. -""" - -def _impl(ctx): - args = ["--image=%s" % img for img in ctx.attr.images] - ctx.actions.write( - output = ctx.outputs.executable, - content = "{} {}".format( - ctx.executable._checker.short_path, - " ".join(args), - ), - ) - runfiles = ctx.runfiles(files = [ctx.executable._checker]) - return [DefaultInfo(runfiles = runfiles)] - -rbe_container_test = rule( - attrs = { - "images": attr.string_list( - doc = "List of fully qualified remote image names to check for existence", - ), - "_checker": attr.label( - default = "//tests/rbe_repo:image_exists", - cfg = "host", - executable = True, - ), - }, - test = True, - implementation = _impl, -) diff --git a/tests/rbe_repo/rbe_ubuntu_1804.yaml b/tests/rbe_repo/rbe_ubuntu_1804.yaml deleted file mode 100644 index a47594b52..000000000 --- a/tests/rbe_repo/rbe_ubuntu_1804.yaml +++ /dev/null @@ -1,31 +0,0 @@ -# Steps in this file use toolchain configs produced by rbe_ubuntu1804 -# target with multiple versions of Bazel. -# Their purpose is to verify that generated configs are usable on RBE. - -steps: -# Install bazelisk -- name: 'gcr.io/cloud-builders/wget' - entrypoint: ../bazelisk.sh - dir: 'tests/rbe_repo/examples' - -- name: 'l.gcr.io/google/bazel' - entrypoint: ../bazelisk - env: ['USE_BAZEL_VERSION=${_BAZEL_VERSION}'] - args: - - --bazelrc=../../bazelrc/${_BAZELRC_FILE} - - test - - --host_javabase=@rbe_ubuntu1804//java:jdk - - --javabase=@rbe_ubuntu1804//java:jdk - - --host_java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --java_toolchain=@bazel_tools//tools/jdk:toolchain_hostjdk8 - - --crosstool_top=@rbe_ubuntu1804//cc:toolchain - - --extra_toolchains=@rbe_ubuntu1804//config:cc-toolchain - - --extra_execution_platforms=@rbe_ubuntu1804//config:platform - - --host_platform=@rbe_ubuntu1804//config:platform - - --platforms=@rbe_ubuntu1804//config:platform - - --config=remote - - --remote_instance_name=projects/asci-toolchain/instances/default_instance - - -- - - //:say_hello_test - - "@java-sample//..." - dir: 'tests/rbe_repo/examples/bazel_toolchains_client' diff --git a/tests/rbe_repo/versions.bzl b/tests/rbe_repo/versions.bzl deleted file mode 100644 index 5304a6548..000000000 --- a/tests/rbe_repo/versions.bzl +++ /dev/null @@ -1,39 +0,0 @@ -# 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 -""" Provides test definitions - -Test file to validate behavior of rbe_autoconfig with export_configs -when repo is initially set up -""" - -_TOOLCHAIN_CONFIG_SPECS = [] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = "" - -# A map from supported Bazel versions mapped to supported config_spec names. -_BAZEL_TO_CONFIG_SPEC_NAMES = {} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "" - -# Map from sha256 of the toolchain container to corresponding config_spec names. -CONTAINER_TO_CONFIG_SPEC_NAMES = {} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/rbe_repo/versions_test.bzl b/tests/rbe_repo/versions_test.bzl deleted file mode 100644 index 69e6bfcc5..000000000 --- a/tests/rbe_repo/versions_test.bzl +++ /dev/null @@ -1,77 +0,0 @@ -# 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 -""" Provides test definitions - -Test file to validate behavior of rbe_autoconfig with export_configs -when repo is different to bazel-toolchains -""" - -_ENV1 = { - "key1": "value1", - "key2": "value2", -} - -_TOOLCHAIN_CONFIG_SPEC1 = struct( - name = "testConfigSpecName1", - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", - java_version = "8", - create_java_configs = True, - create_cc_configs = True, - config_repos = [], - env = _ENV1, -) - -_ENV2 = { - "key3": "value3", - "key4": "value4", -} - -_TOOLCHAIN_CONFIG_SPEC2 = struct( - name = "testConfigSpecName2", - java_home = "/usr/lib/jvm/java-8-openjdk-amd64", - java_version = "8", - create_java_configs = True, - create_cc_configs = True, - config_repos = [], - env = _ENV2, -) - -_TOOLCHAIN_CONFIG_SPECS = [_TOOLCHAIN_CONFIG_SPEC1, _TOOLCHAIN_CONFIG_SPEC2] - -_DEFAULT_TOOLCHAIN_CONFIG_SPEC = _TOOLCHAIN_CONFIG_SPEC1 - -# A map from supported Bazel versions mapped to supported config_spec names. -_BAZEL_TO_CONFIG_SPEC_NAMES = { - "0.24.0": ["testConfigSpecName1"], - "0.25.0": ["testConfigSpecName2"], - "0.26.0": ["testConfigSpecName2", "testConfigSpecName1"], -} - -# sha256 digest of the latest version of the toolchain container. -LATEST = "sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b" - -# Map from sha256 of the toolchain container to corresponding major container -# versions. -CONTAINER_TO_CONFIG_SPEC_NAMES = { - "sha256:f3120a030a19d67626ababdac79cc787e699a1aa924081431285118f87e7b375": ["testConfigSpecName1"], - "sha256:94d7d8552902d228c32c8c148cc13f0effc2b4837757a6e95b73fdc5c5e4b07b": ["testConfigSpecName2", "testConfigSpecName1"], -} - -TOOLCHAIN_CONFIG_AUTOGEN_SPEC = struct( - bazel_to_config_spec_names_map = _BAZEL_TO_CONFIG_SPEC_NAMES, - container_to_config_spec_names_map = CONTAINER_TO_CONFIG_SPEC_NAMES, - default_toolchain_config_spec = _DEFAULT_TOOLCHAIN_CONFIG_SPEC, - latest_container = LATEST, - toolchain_config_specs = _TOOLCHAIN_CONFIG_SPECS, -) diff --git a/tests/rules/BUILD b/tests/rules/BUILD deleted file mode 100644 index 663fe750d..000000000 --- a/tests/rules/BUILD +++ /dev/null @@ -1,27 +0,0 @@ -# Copyright 2017 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. - -load( - "@bazel_tools//tools/build_rules:test_rules.bzl", - "file_test", -) - -# Simply ensures the file supposed to be downloaded by the gce_file -# test rule was actually downloaded and the contents of the file was -# "0" -file_test( - name = "gcs_file_test", - content = "0", - file = "@download_test_gcs_file//file:test.txt", -) diff --git a/tests/rules/exec_properties/BUILD b/tests/rules/exec_properties/BUILD index 8bf10d17c..0e31131a8 100644 --- a/tests/rules/exec_properties/BUILD +++ b/tests/rules/exec_properties/BUILD @@ -44,124 +44,3 @@ compare_dicts_test( "label:def": "456", }, ) - -load("@exec_properties//:constants.bzl", "NETWORK_ON") - -# OVERRIDDEN_NETWORK_ON is actually the same as NETWORK_OFF (see WORKSPACE file). -load("@exec_properties_with_override//:constants.bzl", OVERRIDDEN_NETWORK_ON = "NETWORK_ON") - -# BESPOKE_NETWORK_ON is the same as NETWORK_ON (see WORKSPACE file). -load("@network_on_exec_properties//:constants.bzl", "BESPOKE_NETWORK_ON") - -# Test the docker_privileged property - -constraint_setting(name = "constraint_privileged") - -constraint_value( - name = "constraint_privileged_on", - constraint_setting = ":constraint_privileged", -) - -platform( - name = "platform_privileged_on", - constraint_values = [":constraint_privileged_on"], - parents = ["@rbe_default_with_docker_priveleged//config:platform"], -) - -# privileged_off_test should run with @rbe_default_exec_properties//config:platform -sh_test( - name = "privileged_off_test", - srcs = ["privileged_off.sh"], -) - -# privileged_on_test should run with :platform_privileged_on -sh_test( - name = "privileged_on_test", - srcs = ["privileged_on.sh"], - exec_compatible_with = [ - ":constraint_privileged_on", - ], -) - -# Test the docker_network property - -# Define constraint and platform for the NETWORK_ON execution property set. -constraint_setting(name = "constraint_network") - -constraint_value( - name = "constraint_network_enabled", - constraint_setting = ":constraint_network", -) - -platform( - name = "platform_network_enabled", - constraint_values = [":constraint_network_enabled"], - exec_properties = NETWORK_ON, - parents = ["@rbe_default_exec_properties//config:platform"], -) - -# Define constraint and platform for the BESPOKE_NETWORK_ON execution property set, which should be -# identical to NETWORK_ON, -constraint_setting(name = "constraint_bespoke_network") - -constraint_value( - name = "constraint_bespoke_network_enabled", - constraint_setting = ":constraint_bespoke_network", -) - -platform( - name = "platform_bespoke_network_enabled", - constraint_values = [":constraint_bespoke_network_enabled"], - exec_properties = BESPOKE_NETWORK_ON, - parents = ["@rbe_default_exec_properties//config:platform"], -) - -# Define constraint and platform for the OVERRIDDEN_NETWORK_ON execution property set, which is -# actually identical to NETWORK_OFF, -constraint_setting(name = "constraint_overridden_network") - -constraint_value( - name = "constraint_overridden_network_enabled", - constraint_setting = ":constraint_overridden_network", -) - -platform( - name = "platform_overridden_network_enabled", - constraint_values = [":constraint_overridden_network_enabled"], - exec_properties = OVERRIDDEN_NETWORK_ON, - parents = ["@rbe_default_exec_properties//config:platform"], -) - -# network_disabled_test should run with @rbe_default_exec_properties//config:platform -sh_test( - name = "network_disabled_test", - srcs = ["network_disabled.sh"], -) - -# network_enabled_test should run with :platform_network_enabled -sh_test( - name = "network_enabled_test", - srcs = ["network_enabled.sh"], - exec_compatible_with = [ - ":constraint_network_enabled", - ], -) - -# bespoke_network_enabled_test should run with :platform_bespoke_network_enabled -sh_test( - name = "bespoke_network_enabled_test", - srcs = ["network_enabled.sh"], - exec_compatible_with = [ - ":constraint_bespoke_network_enabled", - ], -) - -# overridden_network_enabled_test should run with :platform_overridden_network_enabled -sh_test( - name = "overridden_network_enabled_test", - # :platform_overridden_network_enabled actually has the network disabled, not enabled. - srcs = ["network_disabled.sh"], - exec_compatible_with = [ - ":constraint_overridden_network_enabled", - ], -) diff --git a/tests/rules/exec_properties/network_disabled.sh b/tests/rules/exec_properties/network_disabled.sh deleted file mode 100755 index 387df7971..000000000 --- a/tests/rules/exec_properties/network_disabled.sh +++ /dev/null @@ -1,23 +0,0 @@ -# Copyright 2017 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. - -#!/bin/bash - -curl https://www.google.com - -# Expecting curl to fail. Return the inverse of the return code. -if [ $? -eq 0 ]; then - exit 1 -fi -exit 0 diff --git a/tests/rules/exec_properties/network_enabled.sh b/tests/rules/exec_properties/network_enabled.sh deleted file mode 100755 index 53e6e7c8f..000000000 --- a/tests/rules/exec_properties/network_enabled.sh +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 2017 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. - -#!/bin/bash - -# curl returns zero on success and not zero on failure. -# This test returns the error code that curl returns. -curl https://www.google.com diff --git a/tests/rules/exec_properties/privileged_off.sh b/tests/rules/exec_properties/privileged_off.sh deleted file mode 100755 index 10cec5047..000000000 --- a/tests/rules/exec_properties/privileged_off.sh +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 2017 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. - -#!/bin/bash - -# The value that /proc/self/status prints out for Seccomp is an indication of whether the container has priveleged mode. -# A value of 2 indicates that it does not. -grep "Seccomp:[[:space:]]*2" /proc/self/status diff --git a/tests/rules/exec_properties/privileged_on.sh b/tests/rules/exec_properties/privileged_on.sh deleted file mode 100755 index 53e4e14dd..000000000 --- a/tests/rules/exec_properties/privileged_on.sh +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright 2017 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. - -#!/bin/bash - -# The value that /proc/self/status prints out for Seccomp is an indication of whether the container has priveleged mode. -# A value of 0 indicates that it does. -grep "Seccomp:[[:space:]]*0" /proc/self/status diff --git a/third_party/clang/revision.bzl b/third_party/clang/revision.bzl deleted file mode 100644 index fc9493fae..000000000 --- a/third_party/clang/revision.bzl +++ /dev/null @@ -1,2 +0,0 @@ -"""Defines the latest available Clang revision.""" -CLANG_REVISION = "r352865"