diff options
author | Christopher Vogt <oss.nsp@cvogt.org> | 2017-03-19 19:54:29 -0400 |
---|---|---|
committer | Christopher Vogt <oss.nsp@cvogt.org> | 2017-03-27 23:54:15 -0400 |
commit | 88854cfeb423a414296ffe2b04938d1b99fb4868 (patch) | |
tree | 7242559752472d7987fc6567e03a6ae1a72409f4 /stage1 | |
parent | 9049773eab2dd7675a9b1cacd92bbe67825cf1ea (diff) | |
download | cbt-88854cfeb423a414296ffe2b04938d1b99fb4868.tar.gz cbt-88854cfeb423a414296ffe2b04938d1b99fb4868.tar.bz2 cbt-88854cfeb423a414296ffe2b04938d1b99fb4868.zip |
io performance tweak: cache cbtLastModified
Diffstat (limited to 'stage1')
-rw-r--r-- | stage1/Stage1.scala | 11 | ||||
-rw-r--r-- | stage1/cbt.scala | 2 | ||||
-rw-r--r-- | stage1/resolver.scala | 3 |
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( |