diff options
-rw-r--r-- | stage1/Stage1.scala | 2 | ||||
-rw-r--r-- | stage1/Stage1Lib.scala | 3 | ||||
-rw-r--r-- | stage1/resolver.scala | 4 | ||||
-rw-r--r-- | stage2/BasicBuild.scala | 11 |
4 files changed, 10 insertions, 10 deletions
diff --git a/stage1/Stage1.scala b/stage1/Stage1.scala index 2f8f960..f0540b4 100644 --- a/stage1/Stage1.scala +++ b/stage1/Stage1.scala @@ -98,7 +98,7 @@ object Stage1{ cbtHasChanged, cbtHasChanged, stage2sourceFiles, stage2Target, stage2StatusFile, - cbtDependency.dependencyClasspath, + cbtDependency.dependencies, mavenCache, Seq("-deprecation","-feature","-unchecked"), classLoaderCache, zincVersion = constants.zincVersion, scalaVersion = constants.scalaVersion diff --git a/stage1/Stage1Lib.scala b/stage1/Stage1Lib.scala index 9b48409..296581c 100644 --- a/stage1/Stage1Lib.scala +++ b/stage1/Stage1Lib.scala @@ -194,7 +194,7 @@ class Stage1Lib( val logger: Logger ) extends BaseLib{ files: Seq[File], compileTarget: File, statusFile: File, - classpath: ClassPath, + dependencies: Seq[Dependency], mavenCache: File, scalacOptions: Seq[String] = Seq(), classLoaderCache: ClassLoaderCache, @@ -202,6 +202,7 @@ class Stage1Lib( val logger: Logger ) extends BaseLib{ scalaVersion: String ): Option[File] = { + val classpath = Dependencies(dependencies).classpath val cp = classpath.string if(classpath.files.isEmpty) throw new Exception("Trying to compile with empty classpath. Source files: " ++ files.toString) diff --git a/stage1/resolver.scala b/stage1/resolver.scala index 1f94c7f..f4af73e 100644 --- a/stage1/resolver.scala +++ b/stage1/resolver.scala @@ -128,8 +128,8 @@ case class ScalaDependencies(cbtHasChanged: Boolean, mavenCache: File, version: ) } -case class BinaryDependency( path: File, dependencies: Seq[Dependency] )(implicit val logger: Logger) extends DependencyImplementation{ - def exportedClasspath = ClassPath(Seq(path)) +case class BinaryDependency( paths: Seq[File], dependencies: Seq[Dependency] )(implicit val logger: Logger) extends DependencyImplementation{ + def exportedClasspath = ClassPath(paths) override def needsUpdate = false def targetClasspath = exportedClasspath } diff --git a/stage2/BasicBuild.scala b/stage2/BasicBuild.scala index 889e32d..8b4a3a5 100644 --- a/stage2/BasicBuild.scala +++ b/stage2/BasicBuild.scala @@ -59,7 +59,7 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge // FIXME: this should probably be removed Resolver( mavenCentral ).bind( "org.scala-lang" % "scala-library" % scalaVersion - ) + ) :+ BinaryDependency(localJars, Nil) // ========== paths ========== final private val defaultSourceDirectory = projectDirectory ++ "/src" @@ -115,11 +115,10 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge .flatMap(_.listFiles) .filter(_.toString.endsWith(".jar")) - override def dependencyClasspath : ClassPath = ClassPath(localJars) ++ super.dependencyClasspath + override def dependencyClasspath : ClassPath = super.dependencyClasspath - protected def compileDependencies: Seq[Dependency] = Nil - final def compileClasspath : ClassPath = - dependencyClasspath ++ ClassPath( compileDependencies.flatMap(_.exportedClasspath.files).distinct ) + protected def compileDependencies: Seq[Dependency] = dependencies + final def compileClasspath : ClassPath = Dependencies(compileDependencies).classpath def resourceClasspath: ClassPath = { val resourcesDirectory = projectDirectory ++ "/resources" @@ -148,7 +147,7 @@ trait BaseBuild extends BuildInterface with DependencyImplementation with Trigge lib.compile( context.cbtHasChanged, needsUpdate || context.parentBuild.map(_.needsUpdate).getOrElse(false), - sourceFiles, compileTarget, compileStatusFile, compileClasspath, + sourceFiles, compileTarget, compileStatusFile, compileDependencies, context.paths.mavenCache, scalacOptions, context.classLoaderCache, zincVersion = zincVersion, scalaVersion = scalaVersion ) |