aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--stage1/Stage1.scala2
-rw-r--r--stage1/Stage1Lib.scala3
-rw-r--r--stage1/resolver.scala4
-rw-r--r--stage2/BasicBuild.scala11
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
)