blob: 9cd2fac6bcafcf477e7d7a4d5e815480c3810d6d [file] [log] [blame]
package(default_visibility = ["//visibility:public"])
filegroup(
name = "srcs",
srcs = glob(["**"]) + [
"//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/buck-ios-support: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/jdk/langtools:srcs",
"//third_party/java/jdk/javabuilder: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",
],
)
# 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.2.5.jar"],
)
java_import(
name = "apache_httpcore",
jars = ["apache_httpcore/httpcore-4.2.4.jar"],
)
java_import(
name = "apache_velocity",
jars = ["apache_velocity/velocity-1.7.jar"],
deps = [
":apache_commons_collections",
":apache_commons_lang",
],
)
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_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.2.jar"],
)
# For bootstrapping JavaBuilder
filegroup(
name = "auto_value-jars",
srcs = ["auto/auto-value-1.2.jar"],
)
java_library(
name = "dagger",
exported_plugins = [":dagger_plugin"],
exports = [
":dagger_api",
":jsr330_inject",
],
)
java_plugin(
name = "dagger_plugin",
processor_class = "dagger.internal.codegen.ComponentProcessor",
deps = [
":dagger_api",
":dagger_compiler",
":dagger_producers",
":guava",
":jsr330_inject",
],
)
java_import(
name = "dagger_api",
jars = ["dagger/dagger-2.5.jar"],
)
java_import(
name = "dagger_compiler",
jars = ["dagger/dagger-compiler-2.5.jar"],
)
java_import(
name = "dagger_producers",
jars = ["dagger/dagger-producers-2.5.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 = "error_prone",
jars = [
"error_prone/error_prone_check_api-2.0.15.jar",
"error_prone/error_prone_core-2.0.15.jar",
"error_prone/error_prone_annotations-2.0.15.jar",
"error_prone/error_prone_annotation-2.0.15.jar",
],
exports = [
":guava",
":jcip_annotations",
":jsr305",
":pcollections",
"//third_party/checker_framework_dataflow",
"//third_party/jformatstring",
],
)
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",
],
)
filegroup(
name = "guava_and_error_prone-jars",
srcs = [
"guava/guava-21.0-20161101.jar",
"error_prone/error_prone_annotation-2.0.15.jar",
"error_prone/error_prone_annotations-2.0.15.jar",
"error_prone/error_prone_check_api-2.0.15.jar",
# error_prone_core contains a copy of an earlier version of guava, so
# it's very important that it occur *after* the guava jar in the
# -classpath arg for both 'javac' and 'java'. The latter is especially
# important when dealing with pre-built jars that themselves assume
# they'll be provided guava classes at runtime via -classpath (e.g.
# guava-testlib uses stuff from guava).
"error_prone/error_prone_core-2.0.15.jar",
"jcip_annotations/jcip-annotations-1.0-1.jar",
"jsr305/jsr-305.jar",
"pcollections/pcollections-2.1.2.jar",
"//third_party/checker_framework_dataflow",
"//third_party/jformatstring",
],
)
# For bootstrapping JavaBuilder
filegroup(
name = "bootstrap_guava_and_error_prone-jars",
srcs = [
"guava/guava-21.0-20161101.jar",
"error_prone/error_prone_annotation-2.0.15.jar",
"error_prone/error_prone_annotations-2.0.15.jar",
"error_prone/error_prone_check_api-2.0.15.jar",
# See the comment about error_prone_core in 'guava_and_error_prone-jars'
# above.
"error_prone/error_prone_core-2.0.15.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",
],
)
# As of Guava 20.0, Guava code uses Error Prone annotations. This isn't a
# problem when compiling with java 8, but is a problem when compiling Bazel
# with java 7 (the Error Prone jars need to be on the javac classpath). So,
# until we drop support for compiling Bazel with java 7, we unfortunately need
# to ensure that the Error Prone jars are always used together with the Guava
# jars.
java_import(
name = "guava",
jars = [":guava_and_error_prone-jars"],
)
# For bootstrapping JavaBuilder
filegroup(
name = "guava-jars",
srcs = ["guava/guava-21.0-20161101.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-rc1.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.0.CR6.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"],
)
# Testing
java_import(
name = "guava-testlib",
jars = ["guava/guava-testlib-21.0-20161101.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-20170104.jar"],
)
java_import(
name = "truth",
jars = ["truth/truth-0.28.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"},
)