gerrit/lib/BUCK
David Ostrovsky 8b73d9cb56 Buck: Activate error prone checks
Given that Bazel activates error prone static analyzer per default,
allow to activate it for Buck as well.  We already monkey patch
java_library and java_test rules, so it's trivial to munge javac_jar
and compiler_class_name attributes as well.

Due to compile performance coniderations and some issues that were
reported with error prone activated by default in Buck driven build,
we make the integration optional and disabled by default. There are
two option to activate it:

1. Add these lines to your private .buckconfig.local to permanently
activate error prone checks:

  [sanitizers]
    error_prone = 1

2. Use this config option to instantly run error prone check:

  buck build --config sanitizers.error_prone=1  gerrit

Error prone has an issue with naming artifact with all transitive
dependencies included: while it has the suffix "ant", it should be
just called "all". But, TBH, we don't care.

Error Prone is Google library and is released under Apache 2 license.

Change-Id: I2bbe0313ad3e54df1d52968cc28d7e13db36d83f
2016-12-12 08:38:23 +00:00

320 lines
7.7 KiB
Python

include_defs('//lib/maven.defs')
include_defs('//lib/GUAVA_VERSION')
define_license(name = 'antlr')
define_license(name = 'Apache1.1')
define_license(name = 'Apache2.0')
define_license(name = 'args4j')
define_license(name = 'asciidoctor')
define_license(name = 'automaton')
define_license(name = 'bouncycastle')
define_license(name = 'CC-BY3.0-unported')
define_license(name = 'clippy')
define_license(name = 'codemirror-minified')
define_license(name = 'codemirror-original')
define_license(name = 'diffy')
define_license(name = 'es6-promise')
define_license(name = 'fetch')
define_license(name = 'h2')
define_license(name = 'highlightjs')
define_license(name = 'icu4j')
define_license(name = 'jgit')
define_license(name = 'jsch')
define_license(name = 'jsoup')
define_license(name = 'MPL1.1')
define_license(name = 'moment')
define_license(name = 'OFL1.1')
define_license(name = 'ow2')
define_license(name = 'page.js')
define_license(name = 'polymer')
define_license(name = 'postgresql')
define_license(name = 'prologcafe')
define_license(name = 'promise-polyfill')
define_license(name = 'protobuf')
define_license(name = 'PublicDomain')
define_license(name = 'silk_icons')
define_license(name = 'slf4j')
define_license(name = 'xz')
define_license(name = 'DO_NOT_DISTRIBUTE')
maven_jar(
name = 'gwtorm_client',
id = 'com.google.gerrit:gwtorm:1.16',
bin_sha1 = '3e41b6d7bb352fa0539ce23b9bce97cf8c26c3bf',
src_sha1 = 'f45b7bacc79a0e5a7f6cf799a2dba23cc5bca19b',
license = 'Apache2.0',
)
java_library(
name = 'gwtorm',
exported_deps = [':gwtorm_client'],
deps = [':protobuf'],
visibility = ['PUBLIC'],
)
maven_jar(
name = 'gwtjsonrpc',
id = 'com.google.gerrit:gwtjsonrpc:1.11',
bin_sha1 = '0990e7eec9eec3a15661edcf9232acbac4aeacec',
src_sha1 = 'a682afc46284fb58197a173cb5818770a1e7834a',
license = 'Apache2.0',
)
maven_jar(
name = 'gson',
id = 'com.google.code.gson:gson:2.7',
sha1 = '751f548c85fa49f330cecbb1875893f971b33c4e',
license = 'Apache2.0',
)
maven_jar(
name = 'guava',
id = 'com.google.guava:guava:' + GUAVA_VERSION,
sha1 = GUAVA_BIN_SHA1,
license = 'Apache2.0',
)
maven_jar(
name = 'guava-retrying',
id = 'com.github.rholder:guava-retrying:2.0.0',
sha1 = '974bc0a04a11cc4806f7c20a34703bd23c34e7f4',
license = 'Apache2.0',
deps = [':jsr305'],
)
maven_jar(
name = 'jsr305',
id = 'com.google.code.findbugs:jsr305:3.0.1',
sha1 = 'f7be08ec23c21485b9b5a1cf1654c2ec8c58168d',
license = 'Apache2.0',
attach_source = False,
# Whitelist lib targets that have jsr305 as a dependency. Generally speaking
# Gerrit core should not depend on these annotations, and instead use
# equivalent annotations in com.google.gerrit.common.
visibility = [
'//gerrit-plugin-api:lib',
'//lib:guava-retrying',
'//lib:soy',
],
)
maven_jar(
name = 'velocity',
id = 'org.apache.velocity:velocity:1.7',
sha1 = '2ceb567b8f3f21118ecdec129fe1271dbc09aa7a',
license = 'Apache2.0',
deps = [
'//lib/commons:collections',
'//lib/commons:lang',
'//lib/commons:oro',
],
exclude = ['META-INF/LICENSE', 'META-INF/NOTICE'],
)
maven_jar(
name = 'jsch',
id = 'com.jcraft:jsch:0.1.54',
sha1 = 'da3584329a263616e277e15462b387addd1b208d',
license = 'jsch',
)
maven_jar(
name = 'servlet-api-3_1',
id = 'org.apache.tomcat:tomcat-servlet-api:8.0.24',
sha1 = '5d9e2e895e3111622720157d0aa540066d5fce3a',
license = 'Apache2.0',
exclude = ['META-INF/NOTICE', 'META-INF/LICENSE'],
)
maven_jar(
name = 'args4j',
id = 'args4j:args4j:2.0.26',
sha1 = '01ebb18ebb3b379a74207d5af4ea7c8338ebd78b',
license = 'args4j',
)
maven_jar(
name = 'mime-util',
id = 'eu.medsea.mimeutil:mime-util:2.1.3',
sha1 = '0c9cfae15c74f62491d4f28def0dff1dabe52a47',
license = 'Apache2.0',
exclude = ['LICENSE.txt', 'README.txt'],
attach_source = False,
)
maven_jar(
name = 'juniversalchardet',
id = 'com.googlecode.juniversalchardet:juniversalchardet:1.0.3',
sha1 = 'cd49678784c46aa8789c060538e0154013bb421b',
license = 'MPL1.1',
)
maven_jar(
name = 'automaton',
id = 'dk.brics.automaton:automaton:1.11-8',
sha1 = '6ebfa65eb431ff4b715a23be7a750cbc4cc96d0f',
license = 'automaton',
)
maven_jar(
name = 'pegdown',
id = 'org.pegdown:pegdown:1.4.2',
sha1 = 'd96db502ed832df867ff5d918f05b51ba3879ea7',
license = 'Apache2.0',
deps = [':grappa'],
)
maven_jar(
name = 'grappa',
id = 'com.github.parboiled1:grappa:1.0.4',
sha1 = 'ad4b44b9c305dad7aa1e680d4b5c8eec9c4fd6f5',
license = 'Apache2.0',
deps = [
':jitescript',
'//lib/ow2:ow2-asm',
'//lib/ow2:ow2-asm-analysis',
'//lib/ow2:ow2-asm-tree',
'//lib/ow2:ow2-asm-util',
],
)
maven_jar(
name = 'jitescript',
id = 'me.qmx.jitescript:jitescript:0.4.0',
sha1 = '2e35862b0435c1b027a21f3d6eecbe50e6e08d54',
license = 'Apache2.0',
visibility = ['//lib:grappa'],
)
maven_jar(
name = 'derby',
id = 'org.apache.derby:derby:10.11.1.1',
sha1 = 'df4b50061e8e4c348ce243b921f53ee63ba9bbe1',
license = 'Apache2.0',
attach_source = False,
)
maven_jar(
name = 'h2',
id = 'com.h2database:h2:1.3.176',
sha1 = 'fd369423346b2f1525c413e33f8cf95b09c92cbd',
license = 'h2',
)
maven_jar(
name = 'postgresql',
id = 'org.postgresql:postgresql:9.4.1211.jre7',
sha1 = '56b01e9e667f408818a6ef06a89598dbab80687d',
license = 'postgresql',
attach_source = False,
)
maven_jar(
name = 'protobuf',
# Must match version in gwtorm/pom.xml.
id = 'com.google.protobuf:protobuf-java:2.5.0',
bin_sha1 = 'a10732c76bfacdbd633a7eb0f7968b1059a65dfa',
src_sha1 = '7a27a7fc815e481b367ead5df19b4a71ace4a419',
license = 'protobuf',
)
# Test-only dependencies below.
maven_jar(
name = 'jimfs',
id = 'com.google.jimfs:jimfs:1.1',
sha1 = '8fbd0579dc68aba6186935cc1bee21d2f3e7ec1c',
license = 'DO_NOT_DISTRIBUTE',
deps = [':guava'],
)
maven_jar(
name = 'junit',
id = 'junit:junit:4.11',
sha1 = '4e031bb61df09069aeb2bffb4019e7a5034a4ee0',
license = 'DO_NOT_DISTRIBUTE',
exported_deps = [':hamcrest-core'],
)
maven_jar(
name = 'hamcrest-core',
id = 'org.hamcrest:hamcrest-core:1.3',
sha1 = '42a25dc3219429f0e5d060061f71acb49bf010a0',
license = 'DO_NOT_DISTRIBUTE',
visibility = ['//lib:junit'],
)
maven_jar(
name = 'truth',
id = 'com.google.truth:truth:0.30',
sha1 = '9d591b5a66eda81f0b88cf1c748ab8853d99b18b',
license = 'DO_NOT_DISTRIBUTE',
exported_deps = [
':guava',
':junit',
],
)
maven_jar(
name = 'tukaani-xz',
id = 'org.tukaani:xz:1.4',
sha1 = '18a9a2ce6abf32ea1b5fd31dae5210ad93f4e5e3',
license = 'xz',
attach_source = False,
visibility = ['//gerrit-server:server'],
)
maven_jar(
name = 'javassist',
id = 'org.javassist:javassist:3.20.0-GA',
sha1 = 'a9cbcdfb7e9f86fbc74d3afae65f2248bfbf82a0',
license = 'DO_NOT_DISTRIBUTE',
)
maven_jar(
name = 'blame-cache',
id = 'com/google/gitiles:blame-cache:0.1-9',
sha1 = '51d35e6f8bbc2412265066cea9653dd758c95826',
license = 'Apache2.0',
repository = GERRIT,
)
# Keep this version of Soy synchronized with the version used in Gitiles.
maven_jar(
name = 'soy',
id = 'com.google.template:soy:2016-08-09',
sha1 = '43d33651e95480d515fe26c10a662faafe3ad1e4',
license = 'Apache2.0',
deps = [
':args4j',
':guava',
':gson',
':icu4j',
':jsr305',
':protobuf',
'//lib/guice:guice',
'//lib/guice:guice-assistedinject',
'//lib/guice:multibindings',
'//lib/guice:javax-inject',
'//lib/ow2:ow2-asm',
'//lib/ow2:ow2-asm-analysis',
'//lib/ow2:ow2-asm-commons',
'//lib/ow2:ow2-asm-util',
],
)
maven_jar(
name = 'icu4j',
id = 'com.ibm.icu:icu4j:57.1',
sha1 = '198ea005f41219f038f4291f0b0e9f3259730e92',
license = 'icu4j',
)
maven_jar(
name = 'errorprone',
id = 'com.google.errorprone:error_prone_ant:2.0.15',
sha1 = '607e3866e2ee25b74708c2898f84eac2f5452d2f',
license = 'Apache2.0',
)