Merge branch 'stable-3.0'

* stable-3.0:
  Update codemirror-plugin to latest revision on master
  project.py: Add support for bazel wrapper bazelisk
  Bazel: Make build tool chain forward compatible

Change-Id: I5f847663e90e6b630a4f860d1a15f60464b72c96
diff --git a/tools/bzl/maven_jar.bzl b/tools/bzl/maven_jar.bzl
index 60b7916..fa5cbd1 100644
--- a/tools/bzl/maven_jar.bzl
+++ b/tools/bzl/maven_jar.bzl
@@ -165,7 +165,7 @@
     out = ctx.execute(args)
 
     if out.return_code:
-        fail("failed %s: %s" % (" ".join(args), out.stderr))
+        fail("failed %s: %s" % (args, out.stderr))
 
     srcjar = None
     if ctx.attr.src_sha1 or ctx.attr.attach_source:
diff --git a/tools/eclipse/project.py b/tools/eclipse/project.py
index 478f448..bfd85ae 100755
--- a/tools/eclipse/project.py
+++ b/tools/eclipse/project.py
@@ -54,15 +54,19 @@
                 dest='java', help='Post Java 8 support (9)')
 opts.add_option('-e', '--edge_java', action='store',
                 dest='edge_java', help='Post Java 9 support (10|11|...)')
+opts.add_option('--bazel', help='name of the bazel executable',
+                action='store', default='bazel', dest='bazel_exe')
+
 args, _ = opts.parse_args()
 
 batch_option = '--batch' if args.batch else None
 custom_java = args.java
 edge_java = args.edge_java
+bazel_exe = args.bazel_exe
 
 def _build_bazel_cmd(*args):
     build = False
-    cmd = ['bazel']
+    cmd = [bazel_exe]
     if batch_option:
         cmd.append('--batch')
     for arg in args:
@@ -82,7 +86,7 @@
 
 
 def gen_bazel_path(ext_location):
-    bazel = check_output(['which', 'bazel']).strip().decode('UTF-8')
+    bazel = check_output(['which', bazel_exe]).strip().decode('UTF-8')
     with open(path.join(ROOT, ".bazel_path"), 'w') as fd:
         fd.write("output_base=%s\n" % ext_location)
         fd.write("bazel=%s\n" % bazel)