From e3cba725c88b9d388335c771068f448ea761f98d Mon Sep 17 00:00:00 2001 From: Andrey Breslav Date: Wed, 9 Oct 2013 18:26:54 +0400 Subject: [PATCH] Each module carries its output directory Original commit: d4a89d04d7880d73d24f42b348ebc8c9ff40f591 --- .../jps/build/KotlinBuilderModuleScriptGenerator.java | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/jps/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java b/jps/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java index f5da7b33997..810fbe7633b 100644 --- a/jps/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java +++ b/jps/jps-plugin/src/org/jetbrains/jet/jps/build/KotlinBuilderModuleScriptGenerator.java @@ -52,16 +52,22 @@ public class KotlinBuilderModuleScriptGenerator { public static File generateModuleDescription(CompileContext context, ModuleBuildTarget target, List sourceFiles) throws IOException { + File outputDir = target.getOutputDir(); + if (outputDir == null) { + throw new IllegalStateException("No output directory found for " + target); + + } CharSequence moduleScriptText = GENERATOR.generateModuleScript( target.getId(), + outputDir.getAbsolutePath(), getKotlinModuleDependencies(context, target), sourceFiles, target.isTests(), // this excludes the output directory from the class path, to be removed for true incremental compilation - Collections.singleton(target.getOutputDir()) + Collections.singleton(outputDir) ); - File scriptFile = new File(target.getOutputDir(), "script." + GENERATOR.getFileExtension()); + File scriptFile = new File(outputDir, "script." + GENERATOR.getFileExtension()); writeScriptToFile(context, moduleScriptText, scriptFile);