Buck: Fix building GWT plugins

As explained in [1], [2] in tree build mode is currently broken for
plugins that expose GWT modules.

To rectify, isolate the libraries that used for building regular and
GWT modules. While regular modules need the whole Plugin API as their
dependency, GWT modules should only consume pre-defined set of GWT
API modules.

[1] https://github.com/facebook/buck/issues/109
[2] https://gerrit-review.googlesource.com/63489

Change-Id: I5943bec40e659421b746de92397468b8ad7420ab
diff --git a/gerrit_plugin.bucklet b/gerrit_plugin.bucklet
index 5c96b71..3d686c6 100644
--- a/gerrit_plugin.bucklet
+++ b/gerrit_plugin.bucklet
@@ -109,6 +109,14 @@
     visibility = ['PUBLIC'],
   )
   if gwt_module:
+    java_library(
+      name = name + '__gwt_module',
+      srcs = [],
+      resources = list(set(srcs + resources)),
+      deps = deps,
+      provided_deps = gwt_deps,
+      visibility = ['PUBLIC'],
+    )
     prebuilt_jar(
       name = '%s-static-jar' % name,
       binary_jar = ':%s-static' % name,
@@ -126,7 +134,7 @@
       name = name + '__gwt_application',
       modules = [gwt_module],
       deps = gwt_deps,
-      module_deps = [':%s__plugin' % name],
+      module_deps = [':%s__gwt_module' % name],
       local_workers = cpu_count(),
       strict = True,
       experimental_args = GWT_COMPILER_ARGS,