aboutsummaryrefslogtreecommitdiff
path: root/stage1
diff options
context:
space:
mode:
authorChristopher Vogt <oss.nsp@cvogt.org>2017-03-19 19:54:29 -0400
committerChristopher Vogt <oss.nsp@cvogt.org>2017-03-27 23:54:15 -0400
commit88854cfeb423a414296ffe2b04938d1b99fb4868 (patch)
tree7242559752472d7987fc6567e03a6ae1a72409f4 /stage1
parent9049773eab2dd7675a9b1cacd92bbe67825cf1ea (diff)
downloadcbt-88854cfeb423a414296ffe2b04938d1b99fb4868.tar.gz
cbt-88854cfeb423a414296ffe2b04938d1b99fb4868.tar.bz2
cbt-88854cfeb423a414296ffe2b04938d1b99fb4868.zip
io performance tweak: cache cbtLastModified
Diffstat (limited to 'stage1')
-rw-r--r--stage1/Stage1.scala11
-rw-r--r--stage1/cbt.scala2
-rw-r--r--stage1/resolver.scala3
3 files changed, 11 insertions, 5 deletions
diff --git a/stage1/Stage1.scala b/stage1/Stage1.scala
index c243cc0..d9bde7c 100644
--- a/stage1/Stage1.scala
+++ b/stage1/Stage1.scala
@@ -98,7 +98,8 @@ object Stage1{
val cls = this.getClass.getClassLoader.loadClass("cbt.NailgunLauncher")
- def cbtDependencies = new CbtDependencies(
+ def _cbtDependencies = new CbtDependencies(
+ (stage2Target++".last-success").lastModified,
mavenCache, nailgunTarget, stage1Target, stage2Target,
new File(buildStage1.compatibilityClasspath)
)
@@ -109,12 +110,18 @@ object Stage1{
val Some( stage2LastModified ) = compile(
buildStage1.stage1LastModified,
stage2sourceFiles, stage2Target, stage2StatusFile,
- cbtDependencies.stage2Dependency.dependencies,
+ _cbtDependencies.stage2Dependency.dependencies,
mavenCache,
Seq("-deprecation","-feature","-unchecked"),
zincVersion = constants.zincVersion, scalaVersion = constants.scalaVersion
)
+ def cbtDependencies = new CbtDependencies(
+ (stage2Target++".last-success").lastModified,
+ mavenCache, nailgunTarget, stage1Target, stage2Target,
+ new File(buildStage1.compatibilityClasspath)
+ )
+
logger.stage1(s"calling CbtDependency.classLoader")
assert(
diff --git a/stage1/cbt.scala b/stage1/cbt.scala
index 52cebe7..039f779 100644
--- a/stage1/cbt.scala
+++ b/stage1/cbt.scala
@@ -74,7 +74,7 @@ object `package`{
def classLoaderCache: ClassLoaderCache = new ClassLoaderCache( persistentCache )
def cbtDependencies = {
import paths._
- new CbtDependencies(mavenCache, nailgunTarget, stage1Target, stage2Target, compatibilityTarget)(logger, transientCache, classLoaderCache)
+ new CbtDependencies(cbtLastModified, mavenCache, nailgunTarget, stage1Target, stage2Target, compatibilityTarget)(logger, transientCache, classLoaderCache)
}
val cbtDependency = cbtDependencies.stage2Dependency
diff --git a/stage1/resolver.scala b/stage1/resolver.scala
index 57ac5b6..1eaeebd 100644
--- a/stage1/resolver.scala
+++ b/stage1/resolver.scala
@@ -176,9 +176,8 @@ case class PostBuildDependency(target: File, _dependencies: Seq[DependencyImplem
override def exportedClasspath = ClassPath( Seq(target) )
override def dependencies = _dependencies
}
-case class CbtDependencies(mavenCache: File, nailgunTarget: File, stage1Target: File, stage2Target: File, compatibilityTarget: File)(implicit logger: Logger, transientCache: java.util.Map[AnyRef,AnyRef], classLoaderCache: ClassLoaderCache){
+case class CbtDependencies(cbtLastModified: Long, mavenCache: File, nailgunTarget: File, stage1Target: File, stage2Target: File, compatibilityTarget: File)(implicit logger: Logger, transientCache: java.util.Map[AnyRef,AnyRef], classLoaderCache: ClassLoaderCache){
val compatibilityDependency = PostBuildDependency(compatibilityTarget, Nil)
- val cbtLastModified = (stage2Target++".last-success").lastModified
val stage1Dependency = PostBuildDependency(
stage1Target,
Seq(