diff options
author | Antonio Cunei <antonio.cunei@epfl.ch> | 2008-10-23 10:39:50 +0000 |
---|---|---|
committer | Antonio Cunei <antonio.cunei@epfl.ch> | 2008-10-23 10:39:50 +0000 |
commit | 597f971fcdb67b601b3c05593e9ad1ff492c5f43 (patch) | |
tree | 462f7577e447b8e1b32170d4e0b644e9385d4669 /src | |
parent | e64aa79347abc36d8c3a7ee50f7f3dcba5f0d0b3 (diff) | |
download | scala-597f971fcdb67b601b3c05593e9ad1ff492c5f43.tar.gz scala-597f971fcdb67b601b3c05593e9ad1ff492c5f43.tar.bz2 scala-597f971fcdb67b601b3c05593e9ad1ff492c5f43.zip |
Finally fixed #906 (quick/bin/fsc does not work).
Also fixed a code duplication in MainGenericRunner
related to handling settings (same code that was
already duplicated, with inconsistencies, in
CompileServer and in Main, fixed in r12623)
Diffstat (limited to 'src')
-rw-r--r-- | src/compiler/scala/tools/nsc/MainGenericRunner.scala | 57 |
1 files changed, 22 insertions, 35 deletions
diff --git a/src/compiler/scala/tools/nsc/MainGenericRunner.scala b/src/compiler/scala/tools/nsc/MainGenericRunner.scala index 9d73176a8a..eddb72fb63 100644 --- a/src/compiler/scala/tools/nsc/MainGenericRunner.scala +++ b/src/compiler/scala/tools/nsc/MainGenericRunner.scala @@ -33,17 +33,26 @@ object MainGenericRunner { if (scalaHome eq null) "" else { - val libdir = new File(new File(scalaHome), "lib") - if (!libdir.exists || libdir.isFile) - return classpath - - val filesInLib = libdir.listFiles - val jarsInLib = - filesInLib.filter(f => - f.isFile && f.getName.endsWith(".jar")) - - jarsInLib.mkString("", File.pathSeparator, "") - } + def listDir(name:String):Array[File] = { + val libdir = new File(new File(scalaHome), name) + if (!libdir.exists || libdir.isFile) + Array() + else + libdir.listFiles + } + { + val filesInLib = listDir("lib") + val jarsInLib = + filesInLib.filter(f => + f.isFile && f.getName.endsWith(".jar")) + jarsInLib.toList + } ::: { + val filesInClasses = listDir("classes") + val dirsInClasses = + filesInClasses.filter(f => f.isDirectory) + dirsInClasses.toList + } + }.mkString("", File.pathSeparator, "") if (classpath == "") extraClassPath + File.pathSeparator + "." @@ -77,30 +86,8 @@ object MainGenericRunner { return } - - if (settings.help.value || settings.Xhelp.value || settings.Yhelp.value) { - if (command.settings.help.value) { - println(command.usageMsg) - println(sampleCompiler.pluginOptionsHelp) - } - - if (settings.Xhelp.value) - println(command.xusageMsg) - - if (settings.Yhelp.value) - println(command.yusageMsg) - - return - } - - - if (settings.showPhases.value) { - println(sampleCompiler.phaseDescriptions) - return - } - - if (settings.showPlugins.value) { - println(sampleCompiler.pluginDescriptions) + if (command.shouldStopWithInfo) { + Console.println(command.getInfoMessage(sampleCompiler)) return } |