Implement Bazel build

To run the tests:

  bazel test //...

To build the Gerrit plugin API, run:

  bazel build gerrit-plugin-api:plugin-api_deploy.jar

To build the Gerrit extension API, run:

  bazel build gerrit-extension-api:extension-api_deploy.jar

TODOs:

Licenses
Reduce visibility (all public for now)
Generate HTML Documentation
Core plugins
gerrit_plugin() rule to build plugins in tree and standalone modes
GWT UI (only gwt_module() skylark rule is provided, no gwt_binary())
PolyGerrit UI
WAR
Publish artifacts to Maven Central
Ask Bazel team to add Gerrit to their CI on ci.bazel.io

Contributed-By: Han-Wen Nienhuys <hanwen@google.com>
Change-Id: I9a86e670882a44a5c966579cdeb8ed79b1590de3
diff --git a/lib/log/BUILD b/lib/log/BUILD
new file mode 100644
index 0000000..ac92ab6
--- /dev/null
+++ b/lib/log/BUILD
@@ -0,0 +1,47 @@
+java_library(
+  name = 'api',
+  exports = ['@log_api//jar'],
+  visibility = ['//visibility:public'],
+)
+
+java_library(
+  name = 'nop',
+  exports = ['@log_nop//jar'],
+  runtime_deps = [':api'],
+  visibility = ['//visibility:public'],
+)
+
+java_library(
+  name = 'impl_log4j',
+  exports = ['@impl_log4j//jar'],
+  runtime_deps = [':log4j'],
+  visibility = ['//visibility:public'],
+)
+
+java_library(
+  name = 'jcl-over-slf4j',
+  exports = ['@jcl_over_slf4j//jar'],
+  visibility = ['//visibility:public'],
+)
+
+java_library(
+  name = 'log4j',
+  exports = ['@log4j//jar'],
+  visibility = ['//visibility:public'],
+)
+
+java_library(
+  name = 'jsonevent-layout',
+  exports = ['@jsonevent_layout//jar'],
+  runtime_deps = [
+    ':json-smart',
+    '//lib/commons:lang'
+  ],
+  visibility = ['//visibility:public'],
+)
+
+java_library(
+  name = 'json-smart',
+  exports = ['@json_smart//jar'],
+  visibility = ['//visibility:public'],
+)