cherry pick some changes from js branch
diff --git a/kotlin/builder/src/io/bazel/kotlin/builder/tasks/KotlinBuilder.kt b/kotlin/builder/src/io/bazel/kotlin/builder/tasks/KotlinBuilder.kt
index 2c7ebfc..37cfd5f 100644
--- a/kotlin/builder/src/io/bazel/kotlin/builder/tasks/KotlinBuilder.kt
+++ b/kotlin/builder/src/io/bazel/kotlin/builder/tasks/KotlinBuilder.kt
@@ -131,7 +131,7 @@
         PLUGINS("--kotlin_plugins"),
         FRIEND_PATHS("--kotlin_friend_paths"),
         OUTPUT_JDEPS("--kotlin_output_jdeps"),
-        DEBUG("--kotlin_debug"),
+        DEBUG("--kotlin_debug_tags"),
         TASK_ID("--kotlin_task_id");
     }
 
diff --git a/kotlin/builder/src/io/bazel/kotlin/builder/utils/CompilationTaskContext.kt b/kotlin/builder/src/io/bazel/kotlin/builder/utils/CompilationTaskContext.kt
index d65d447..5214657 100644
--- a/kotlin/builder/src/io/bazel/kotlin/builder/utils/CompilationTaskContext.kt
+++ b/kotlin/builder/src/io/bazel/kotlin/builder/utils/CompilationTaskContext.kt
@@ -42,6 +42,8 @@
         throwable.printStackTrace(out)
     }
 
+    @Suppress("unused")
+    fun print(msg: String) { out.println(msg) }
     /**
      * Print a list of debugging lines.
      *
@@ -110,9 +112,8 @@
         if (result != 0) {
             if (printOnFail) {
                 printCompilerOutput(output)
-            } else {
-                throw CompilationStatusException("compile phase failed", result, output)
             }
+            throw CompilationStatusException("compile phase failed", result, output)
         } else if(printOnSuccess) {
             printCompilerOutput(output)
         }
diff --git a/kotlin/internal/common/common.bzl b/kotlin/internal/common/common.bzl
index fa3c954..6f8f30e 100644
--- a/kotlin/internal/common/common.bzl
+++ b/kotlin/internal/common/common.bzl
@@ -34,7 +34,7 @@
             debug = debug + [tag]
         if tag == "timings":
             debug = debug + [tag]
-    args.add("--kotlin_debug", debug)
+    args.add("--kotlin_debug_tags", debug)
 
     return args
 
diff --git a/kotlin/internal/jvm/compile.bzl b/kotlin/internal/jvm/compile.bzl
index aeb319b..df4a1f7 100644
--- a/kotlin/internal/jvm/compile.bzl
+++ b/kotlin/internal/jvm/compile.bzl
@@ -185,7 +185,7 @@
     if len(plugin_info.annotation_processors) > 0:
         args.add("--kotlin_plugins", plugin_info.to_json())
 
-    progress_message = "Compiling Kotlin %s { kt: %d, java: %d, srcjars: %d }" % (
+    progress_message = "Compiling Kotlin to JVM %s { kt: %d, java: %d, srcjars: %d }" % (
         ctx.label,
         len(srcs.kt),
         len(srcs.java),
diff --git a/kotlin/internal/toolchains.bzl b/kotlin/internal/toolchains.bzl
index 32e0477..a386d79 100644
--- a/kotlin/internal/toolchains.bzl
+++ b/kotlin/internal/toolchains.bzl
@@ -47,7 +47,7 @@
         debug = ctx.attr.debug,
         jvm_target = ctx.attr.jvm_target,
         kotlinbuilder = ctx.attr.kotlinbuilder,
-        kotlin_home = ctx.files.kotlin_home,
+        kotlin_home = ctx.attr.kotlin_home,
         jvm_stdlibs = java_common.create_provider(
             compile_time_jars = ctx.files.jvm_stdlibs,
             runtime_jars = ctx.files.jvm_runtime,