|  | package(default_visibility = ["//visibility:public"]) | 
|  |  | 
|  | filegroup( | 
|  | name = "srcs", | 
|  | srcs = glob(["**"]) + [ | 
|  | "//third_party/allocation_instrumenter:srcs", | 
|  | "//third_party/css/bootstrap:srcs", | 
|  | "//third_party/css/font_awesome:srcs", | 
|  | "//third_party/ijar:srcs", | 
|  | "//third_party/iossim:srcs", | 
|  | "//third_party/grpc:srcs", | 
|  | "//third_party/java/android_databinding:srcs", | 
|  | "//third_party/java/aosp_gradle_core:srcs", | 
|  | "//third_party/java/apkbuilder:srcs", | 
|  | "//third_party/java/dd_plist:srcs", | 
|  | "//third_party/java/j2objc:srcs", | 
|  | "//third_party/java/jacoco:srcs", | 
|  | "//third_party/java/jarjar:srcs", | 
|  | "//third_party/java/javapoet:srcs", | 
|  | "//third_party/java/jcommander:srcs", | 
|  | "//third_party/java/jopt-simple:srcs", | 
|  | "//third_party/java/jdk/langtools:srcs", | 
|  | "//third_party/java/jdk/javabuilder:srcs", | 
|  | "//third_party/java/proguard:srcs", | 
|  | "//third_party/javascript/bootstrap:srcs", | 
|  | "//third_party/checker_framework_dataflow:srcs", | 
|  | "//third_party/checker_framework_javacutil:srcs", | 
|  | "//third_party/jformatstring:srcs", | 
|  | "//third_party/protobuf:srcs", | 
|  | "//third_party/py/concurrent:srcs", | 
|  | "//third_party/py/gflags:srcs", | 
|  | "//third_party/py/mock:srcs", | 
|  | "//third_party/py/six:srcs", | 
|  | "//third_party/zlib:srcs", | 
|  | "//third_party/nanopb:srcs", | 
|  | "//third_party/googleapis:srcs", | 
|  | "//third_party/def_parser:srcs", | 
|  | "//third_party/pprof:srcs", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | # Filegroup to ship the sources to the Bazel embededded tools | 
|  | # This filegroup should contains all GPL with classpath exception | 
|  | # and LGPL code that we use in Bazel. | 
|  | filegroup( | 
|  | name = "gpl-srcs", | 
|  | srcs = [ | 
|  | "//third_party/checker_framework_dataflow:srcs", | 
|  | "//third_party/checker_framework_javacutil:srcs", | 
|  | "//third_party/jformatstring:srcs", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | filegroup( | 
|  | name = "d3-js", | 
|  | srcs = glob(["javascript/d3/**/*.js"]), | 
|  | ) | 
|  |  | 
|  | filegroup( | 
|  | name = "jquery", | 
|  | srcs = glob(["javascript/jquery/**/*.jslib"]), | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "aether", | 
|  | jars = [ | 
|  | "aether/aether-api-1.0.0.v20140518.jar", | 
|  | "aether/aether-spi-1.0.0.v20140518.jar", | 
|  | "aether/aether-transport-http-1.0.0.v20140518.jar", | 
|  | "aether/aether-connector-basic-1.0.0.v20140518.jar", | 
|  | "aether/aether-transport-classpath-1.0.0.v20140518.jar", | 
|  | "aether/aether-transport-wagon-1.0.0.v20140518.jar", | 
|  | "aether/aether-impl-1.0.0.v20140518.jar", | 
|  | "aether/aether-transport-file-1.0.0.v20140518.jar", | 
|  | "aether/aether-util-1.0.0.v20140518.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "android_common_25_0_0", | 
|  | jars = [ | 
|  | "android_common/com.android_annotations_25.0.0.jar", | 
|  | "android_common/com.android.tools.build_builder_2.0.0.jar", | 
|  | "android_common/com.android.tools.build_builder-model_2.0.0.jar", | 
|  | "android_common/com.android.tools.build_builder-test-api_2.0.0.jar", | 
|  | "android_common/com.android.tools.build_manifest-merger_25.0.0.jar", | 
|  | "android_common/com.android.tools.external.lombok_lombok-ast_0.2.3.jar", | 
|  | "android_common/com.android.tools.layoutlib_layoutlib_25.0.0.jar", | 
|  | "android_common/com.android.tools.lint_lint-api_25.0.0.jar", | 
|  | "android_common/com.android.tools.lint_lint-checks_25.0.0.jar", | 
|  | "android_common/com.android.tools_common_25.0.0.jar", | 
|  | "android_common/com.android.tools_ddmlib_25.0.0.jar", | 
|  | "android_common/com.android.tools_dvlib_25.0.0.jar", | 
|  | "android_common/com.android.tools_repository_25.0.0.jar", | 
|  | "android_common/com.android.tools_sdk-common_25.0.0.jar", | 
|  | "android_common/com.android.tools_sdklib_25.0.0.jar", | 
|  | ], | 
|  | runtime_deps = [ | 
|  | ":asm", | 
|  | ":asm-analysis", | 
|  | ":asm-tree", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_commons_codec", | 
|  | jars = ["apache_commons_codec/commons-codec-1.9.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_commons_collections", | 
|  | jars = ["apache_commons_collections/commons-collections-3.2.2.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_commons_lang", | 
|  | jars = ["apache_commons_lang/commons-lang-2.6.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_commons_compress", | 
|  | jars = ["apache_commons_compress/apache-commons-compress-1.9.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_commons_logging", | 
|  | jars = ["apache_commons_logging/commons-logging-1.1.1.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_commons_pool2", | 
|  | jars = ["apache_commons_pool2/commons-pool2-2.3.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_httpclient", | 
|  | jars = ["apache_httpclient/httpclient-4.5.3.jar"], | 
|  | deps = [":apache_commons_logging"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_httpcore", | 
|  | jars = ["apache_httpcore/httpcore-4.4.6.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "apache_velocity", | 
|  | jars = ["apache_velocity/velocity-1.7.jar"], | 
|  | deps = [ | 
|  | ":apache_commons_collections", | 
|  | ":apache_commons_lang", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "api_client", | 
|  | jars = [ | 
|  | "api_client/google-api-client-1.22.0.jar", | 
|  | "api_client/google-api-client-jackson2-1.22.0.jar", | 
|  | "api_client/google-http-client-1.22.0.jar", | 
|  | "api_client/google-http-client-jackson2-1.22.0.jar", | 
|  | ], | 
|  | runtime_deps = [ | 
|  | ":jackson2", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "asm", | 
|  | jars = ["asm/asm-5.1.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "asm-analysis", | 
|  | jars = ["asm/asm-analysis-5.1.jar"], | 
|  | runtime_deps = [":asm-tree"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "asm-commons", | 
|  | jars = ["asm/asm-commons-5.1.jar"], | 
|  | runtime_deps = [":asm-tree"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "asm-tree", | 
|  | jars = ["asm/asm-tree-5.1.jar"], | 
|  | runtime_deps = [":asm"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "asm-util", | 
|  | jars = ["asm/asm-util-5.1.jar"], | 
|  | runtime_deps = [":asm-tree"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "auth", | 
|  | jars = [ | 
|  | "auth/google-auth-library-oauth2-http-0.6.0.jar", | 
|  | "auth/google-auth-library-credentials-0.6.0.jar", | 
|  | ], | 
|  | runtime_deps = [ | 
|  | ":api_client", | 
|  | ":guava", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_plugin( | 
|  | name = "auto_annotation_plugin", | 
|  | processor_class = "com.google.auto.value.processor.AutoAnnotationProcessor", | 
|  | deps = [ | 
|  | ":apache_commons_collections", | 
|  | ":apache_velocity", | 
|  | ":asm", | 
|  | ":auto_common", | 
|  | ":auto_service", | 
|  | ":auto_value_value", | 
|  | ":guava", | 
|  | ":jsr305", | 
|  | ":tomcat_annotations_api", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "auto_common", | 
|  | jars = ["auto/auto-common-0.3.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "auto_service", | 
|  | jars = ["auto/auto-service-1.0-rc2.jar"], | 
|  | ) | 
|  |  | 
|  | java_plugin( | 
|  | name = "auto_service_plugin", | 
|  | processor_class = "com.google.auto.service.processor.AutoServiceProcessor", | 
|  | deps = [ | 
|  | ":auto_common", | 
|  | ":auto_service", | 
|  | ":guava", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_plugin( | 
|  | name = "auto_value_plugin", | 
|  | processor_class = "com.google.auto.value.processor.AutoValueProcessor", | 
|  | deps = [ | 
|  | ":apache_commons_collections", | 
|  | ":apache_velocity", | 
|  | ":asm", | 
|  | ":auto_common", | 
|  | ":auto_service", | 
|  | ":auto_value_value", | 
|  | ":guava", | 
|  | ":tomcat_annotations_api", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_library( | 
|  | name = "auto_value", | 
|  | exported_plugins = [ | 
|  | ":auto_annotation_plugin", | 
|  | ":auto_value_plugin", | 
|  | ], | 
|  | exports = [ | 
|  | ":auto_value_value", | 
|  | ":tomcat_annotations_api", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "auto_value_value", | 
|  | jars = ["auto/auto-value-1.4.jar"], | 
|  | ) | 
|  |  | 
|  | # For bootstrapping JavaBuilder | 
|  | filegroup( | 
|  | name = "auto_value-jars", | 
|  | srcs = ["auto/auto-value-1.4.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "bytebuddy", | 
|  | jars = ["bytebuddy/byte-buddy-dep-0.7-rc6.jar"], | 
|  | deps = [ | 
|  | ":asm", | 
|  | ":asm-commons", | 
|  | ":asm-util", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "gson", | 
|  | jars = ["gson/gson-2.2.4.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "hazelcast", | 
|  | jars = [ | 
|  | "hazelcast/hazelcast-3.6.4.jar", | 
|  | "hazelcast/hazelcast-client-3.6.4.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "hungarian_algorithm", | 
|  | jars = ["hungarian_algorithm/software-and-algorithms-1.0.jar"], | 
|  | srcjar = "hungarian_algorithm/software-and-algorithms-1.0-src.jar", | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "error_prone", | 
|  | jars = [ | 
|  | "error_prone/error_prone_check_api-2.1.1.jar", | 
|  | "error_prone/error_prone_core-2.1.1.jar", | 
|  | "error_prone/error_prone_annotations-2.1.1.jar", | 
|  | "error_prone/error_prone_annotation-2.1.1.jar", | 
|  | ], | 
|  | deps = [ | 
|  | ":auto_common", | 
|  | ":guava", | 
|  | ":hungarian_algorithm", | 
|  | ":jcip_annotations", | 
|  | ":jsr305", | 
|  | ":pcollections", | 
|  | "//third_party/checker_framework_dataflow", | 
|  | "//third_party/jformatstring", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jackson2", | 
|  | jars = [ | 
|  | "jackson2/jackson-core-2.8.6.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jcip_annotations", | 
|  | jars = [ | 
|  | "jcip_annotations/jcip-annotations-1.0-1.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "pcollections", | 
|  | jars = [ | 
|  | "pcollections/pcollections-2.1.2.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | # For bootstrapping JavaBuilder | 
|  | filegroup( | 
|  | name = "bootstrap_guava_and_error_prone-jars", | 
|  | srcs = [ | 
|  | "auto/auto-common-0.3.jar", | 
|  | "error_prone/error_prone_annotation-2.1.1.jar", | 
|  | "error_prone/error_prone_annotations-2.1.1.jar", | 
|  | "error_prone/error_prone_check_api-2.1.1.jar", | 
|  | "error_prone/error_prone_core-2.1.1.jar", | 
|  | "guava/guava-23.1-jre.jar", | 
|  | "hungarian_algorithm/software-and-algorithms-1.0.jar", | 
|  | "jcip_annotations/jcip-annotations-1.0-1.jar", | 
|  | "jsr305/jsr-305.jar", | 
|  | "pcollections/pcollections-2.1.2.jar", | 
|  | "//third_party/checker_framework_dataflow:bootstrap", | 
|  | "//third_party/jformatstring:bootstrap", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "guava", | 
|  | jars = [ | 
|  | "error_prone/error_prone_annotations-2.1.1.jar", | 
|  | "jcip_annotations/jcip-annotations-1.0-1.jar", | 
|  | "jsr305/jsr-305.jar", | 
|  | "guava/guava-23.1-jre.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "instrumentation", | 
|  | jars = [ | 
|  | "instrumentation/instrumentation-api-0.4.3.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "opencensus-api", | 
|  | jars = [ | 
|  | "opencensus/opencensus-api-0.5.1.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | # For bootstrapping JavaBuilder | 
|  | filegroup( | 
|  | name = "guava-jars", | 
|  | srcs = ["guava/guava-23.1-jre.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jgit", | 
|  | jars = ["jgit/org.eclipse.jgit-4.0.1.201506240215-r.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jimfs", | 
|  | jars = ["jimfs/jimfs-1.1.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "joda_time", | 
|  | jars = ["joda_time/joda-time-2.3.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jsch", | 
|  | jars = ["jsch/jsch-0.1.51.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jsr305", | 
|  | jars = ["jsr305/jsr-305.jar"], | 
|  | ) | 
|  |  | 
|  | # For bootstrapping JavaBuilder | 
|  | filegroup( | 
|  | name = "jsr305-jars", | 
|  | srcs = ["jsr305/jsr-305.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "jsr330_inject", | 
|  | jars = ["jsr330_inject/javax.inject.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "maven", | 
|  | jars = glob(["maven/*.jar"]), | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "maven_model", | 
|  | jars = [ | 
|  | "maven_model/maven-aether-provider-3.2.3.jar", | 
|  | "maven_model/maven-model-3.2.3.jar", | 
|  | "maven_model/maven-model-builder-3.2.3.jar", | 
|  | "maven_model/maven-repository-metadata-3.2.3.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "netty", | 
|  | jars = ["netty/netty-all-4.1.14.Final.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "netty_tcnative", | 
|  | jars = ["netty_tcnative/netty-tcnative-boringssl-static-2.0.5.Final.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "plexus_component_annotations", | 
|  | jars = ["plexus_component_annotations/plexus-component-annotations-1.6.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "plexus_interpolation", | 
|  | jars = ["plexus_interpolation/plexus-interpolation-1.22.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "plexus_utils", | 
|  | jars = ["plexus_utils/plexus-utils-3.0.21.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "slf4j", | 
|  | jars = [ | 
|  | "slf4j/slf4j-api-1.7.7.jar", | 
|  | "slf4j/slf4j-jdk14-1.7.7.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "tomcat_annotations_api", | 
|  | jars = ["tomcat_annotations_api/tomcat-annotations-api-8.0.5.jar"], | 
|  | ) | 
|  |  | 
|  | # For bootstrapping JavaBuilder | 
|  | filegroup( | 
|  | name = "tomcat_annotations_api-jars", | 
|  | srcs = ["tomcat_annotations_api/tomcat-annotations-api-8.0.5.jar"], | 
|  | ) | 
|  |  | 
|  | # Testing | 
|  |  | 
|  | java_import( | 
|  | name = "guava-testlib", | 
|  | jars = ["guava/guava-testlib-23.1-jre.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "junit4", | 
|  | jars = [ | 
|  | "hamcrest/hamcrest-core-1.3.jar", | 
|  | "junit/junit-4.11.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "mockito", | 
|  | jars = ["mockito/mockito-all-1.10.19.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "turbine", | 
|  | jars = ["turbine/turbine-0.1-20170828.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "truth", | 
|  | jars = ["truth/truth-0.36.jar"], | 
|  | ) | 
|  |  | 
|  | java_import( | 
|  | name = "xz", | 
|  | jars = ["xz/xz-1.5.jar"], | 
|  | ) | 
|  |  | 
|  | cc_library( | 
|  | name = "gtest", | 
|  | srcs = [ | 
|  | "gtest/gtest-all.cc", | 
|  | "gtest/gtest_main.cc", | 
|  | ], | 
|  | hdrs = [ | 
|  | "gtest/gtest.h", | 
|  | ], | 
|  | data = [ | 
|  | "//tools:test_sharding_compliant", | 
|  | ], | 
|  | includes = ["."], | 
|  | # gtest detects pthread, and the linker fails without it. | 
|  | linkopts = ["-lpthread"], | 
|  | ) | 
|  |  | 
|  | # To be used by the skylark example. | 
|  | filegroup( | 
|  | name = "junit4-jars", | 
|  | srcs = [ | 
|  | "hamcrest/hamcrest-core-1.3.jar", | 
|  | "junit/junit-4.11.jar", | 
|  | ], | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "windows_mingw", | 
|  | values = {"compiler": "windows_mingw"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "windows_msys64", | 
|  | values = {"compiler": "windows_msys64"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "windows_msys64_mingw64", | 
|  | values = {"compiler": "windows_msys64_mingw64"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "windows_clang", | 
|  | values = {"compiler": "windows_clang"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "darwin", | 
|  | values = {"host_cpu": "darwin"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "k8", | 
|  | values = {"host_cpu": "k8"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "piii", | 
|  | values = {"host_cpu": "piii"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "arm", | 
|  | values = {"host_cpu": "arm"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "freebsd", | 
|  | values = {"host_cpu": "freebsd"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "s390x", | 
|  | values = {"host_cpu": "s390x"}, | 
|  | ) | 
|  |  | 
|  | config_setting( | 
|  | name = "ppc", | 
|  | values = {"host_cpu": "ppc"}, | 
|  | ) | 
|  |  | 
|  | test_suite( | 
|  | name = "all_windows_tests", | 
|  | tests = [ | 
|  | "//third_party/def_parser:windows_tests", | 
|  | ], | 
|  | visibility = ["//src:__pkg__"], | 
|  | ) |