mirror of https://github.com/sbt/sbt.git
make ClasspathOptions configurable
This commit is contained in:
parent
201faacce8
commit
37f793be6e
|
|
@ -0,0 +1,11 @@
|
||||||
|
/* sbt -- Simple Build Tool
|
||||||
|
* Copyright 2009, 2010 Mark Harrah
|
||||||
|
*/
|
||||||
|
package sbt
|
||||||
|
|
||||||
|
final case class ClasspathOptions(autoBoot: Boolean, compiler: Boolean, extra: Boolean)
|
||||||
|
object ClasspathOptions
|
||||||
|
{
|
||||||
|
def manual = ClasspathOptions(false, false, false)
|
||||||
|
def auto = ClasspathOptions(true, true, true)
|
||||||
|
}
|
||||||
|
|
@ -12,7 +12,7 @@ package compiler
|
||||||
* order to add these jars to the boot classpath. The 'scala.home' property must be unset because Scala
|
* order to add these jars to the boot classpath. The 'scala.home' property must be unset because Scala
|
||||||
* puts jars in that directory on the bootclasspath. Because we use multiple Scala versions,
|
* puts jars in that directory on the bootclasspath. Because we use multiple Scala versions,
|
||||||
* this would lead to compiling against the wrong library jar.*/
|
* this would lead to compiling against the wrong library jar.*/
|
||||||
class CompilerArguments(scalaInstance: ScalaInstance, cp: ClasspathOptions) extends NotNull
|
final class CompilerArguments(scalaInstance: ScalaInstance, cp: ClasspathOptions)
|
||||||
{
|
{
|
||||||
def apply(sources: Seq[File], classpath: Seq[File], outputDirectory: File, options: Seq[String]): Seq[String] =
|
def apply(sources: Seq[File], classpath: Seq[File], outputDirectory: File, options: Seq[String]): Seq[String] =
|
||||||
{
|
{
|
||||||
|
|
@ -41,12 +41,6 @@ class CompilerArguments(scalaInstance: ScalaInstance, cp: ClasspathOptions) exte
|
||||||
def bootClasspathOption = if(cp.autoBoot) Seq("-bootclasspath", createBootClasspath) else Nil
|
def bootClasspathOption = if(cp.autoBoot) Seq("-bootclasspath", createBootClasspath) else Nil
|
||||||
def bootClasspath = if(cp.autoBoot) sbt.IO.pathSplit(createBootClasspath).map(new File(_)).toSeq else Nil
|
def bootClasspath = if(cp.autoBoot) sbt.IO.pathSplit(createBootClasspath).map(new File(_)).toSeq else Nil
|
||||||
}
|
}
|
||||||
class ClasspathOptions(val autoBoot: Boolean, val compiler: Boolean, val extra: Boolean) extends NotNull
|
|
||||||
object ClasspathOptions
|
|
||||||
{
|
|
||||||
def manual = new ClasspathOptions(false, false, false)
|
|
||||||
def auto = new ClasspathOptions(true, true, true)
|
|
||||||
}
|
|
||||||
object CompilerArguments
|
object CompilerArguments
|
||||||
{
|
{
|
||||||
def abs(files: Seq[File]): Seq[String] = files.map(_.getAbsolutePath)
|
def abs(files: Seq[File]): Seq[String] = files.map(_.getAbsolutePath)
|
||||||
|
|
|
||||||
|
|
@ -106,7 +106,8 @@ object Defaults
|
||||||
)
|
)
|
||||||
|
|
||||||
def compileBase = Seq(
|
def compileBase = Seq(
|
||||||
compilers <<= (scalaInstance, appConfiguration, streams) map { (si, app, s) => Compiler.compilers(si)(app, s.log) },
|
classpathOptions in GlobalScope :== ClasspathOptions.auto,
|
||||||
|
compilers <<= (scalaInstance, appConfiguration, streams, classpathOptions) map { (si, app, s, co) => Compiler.compilers(si, co)(app, s.log) },
|
||||||
javacOptions in GlobalScope :== Nil,
|
javacOptions in GlobalScope :== Nil,
|
||||||
scalacOptions in GlobalScope :== Nil,
|
scalacOptions in GlobalScope :== Nil,
|
||||||
scalaInstance <<= (appConfiguration, scalaVersion){ (app, version) => ScalaInstance(version, app.provider.scalaProvider.launcher) },
|
scalaInstance <<= (appConfiguration, scalaVersion){ (app, version) => ScalaInstance(version, app.provider.scalaProvider.launcher) },
|
||||||
|
|
|
||||||
|
|
@ -68,6 +68,7 @@ object Keys
|
||||||
val compileInputs = TaskKey[Compiler.Inputs]("compile-inputs")
|
val compileInputs = TaskKey[Compiler.Inputs]("compile-inputs")
|
||||||
val scalaInstance = SettingKey[ScalaInstance]("scala-instance")
|
val scalaInstance = SettingKey[ScalaInstance]("scala-instance")
|
||||||
val scalaVersion = SettingKey[String]("scala-version")
|
val scalaVersion = SettingKey[String]("scala-version")
|
||||||
|
val classpathOptions = SettingKey[ClasspathOptions]("classpath-options")
|
||||||
|
|
||||||
val webappDir = SettingKey[File]("webapp-dir")
|
val webappDir = SettingKey[File]("webapp-dir")
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue