Skip to content
Snippets Groups Projects
Commit 9bd0b744 authored by Philippe Suter's avatar Philippe Suter
Browse files

improved SBT script

parent dc81fd82
No related branches found
No related tags found
No related merge requests found
import sbt._ import sbt._
class FunCheckProject(info: ProjectInfo) extends DefaultProject(info) { class FunCheckProject(info: ProjectInfo) extends ParentProject(info) {
override def outputDirectoryName = "bin" override def outputDirectoryName = "bin"
override def mainScalaSourcePath = "src"
override def mainResourcesPath = "resources"
override def dependencyPath = "lib" override def dependencyPath = "lib"
override def shouldCheckOutputDirectories = false
lazy val purescala = project(".", "PureScala Definitions", new PureScalaProject(_))
lazy val plugin = project(".", "FunCheck Plugin", new PluginProject(_), purescala)
lazy val multisets = project(".", "Multiset Solver", new MultisetsProject(_), plugin, purescala)
override def compileOptions = super.compileOptions ++ Seq(Unchecked) sealed abstract class PersonalizedProject(info: ProjectInfo) extends DefaultProject(info) {
override def dependencyPath = "lib"
override def outputDirectoryName = "bin"
override def compileOptions = super.compileOptions ++ Seq(Unchecked)
}
lazy val scalac = task { class PureScalaProject(info: ProjectInfo) extends PersonalizedProject(info) {
println("Running scalac...") override def outputPath = "bin" / "purescala"
None override def mainScalaSourcePath = "src" / "purescala"
} dependsOn(`package`) describedAs("Runs scalac with the FunCheck plugin.")
}
class PluginProject(info: ProjectInfo) extends PersonalizedProject(info) {
override def outputPath = "bin" / "funcheck"
override def mainScalaSourcePath = "src" / "funcheck"
override def unmanagedClasspath = super.unmanagedClasspath +++ purescala.jarPath
override def mainResourcesPath = "resources" / "funcheck"
}
class MultisetsProject(info: ProjectInfo) extends PersonalizedProject(info) {
override def outputPath = "bin" / "multisets"
override def mainScalaSourcePath = "src" / "multisets"
override def unmanagedClasspath = super.unmanagedClasspath +++ purescala.jarPath
}
} }
File moved
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment