diff options
Diffstat (limited to 'stage1')
-rw-r--r-- | stage1/Stage1Lib.scala | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/stage1/Stage1Lib.scala b/stage1/Stage1Lib.scala index f701c72..d99354c 100644 --- a/stage1/Stage1Lib.scala +++ b/stage1/Stage1Lib.scala @@ -55,6 +55,8 @@ class Stage1Lib( logger: Logger ) extends BaseLib{ def green(string: String) = scala.Console.GREEN++string++scala.Console.RESET def write(file: File, content: String, options: OpenOption*): File = Stage0Lib.write(file, content, options:_*) + def writeIfChanged(file: File, content: String, options: OpenOption*): File = + if( !file.exists || content != file.readAsString ) write(file, content, options:_*) else file def addHttpCredentials( connection: HttpURLConnection, credentials: String ): Unit = { val encoding = new sun.misc.BASE64Encoder().encode(credentials.getBytes) @@ -220,12 +222,16 @@ class Stage1Lib( logger: Logger ) extends BaseLib{ val classpath = d.classpath val cp = classpath.string + def lastModified = ( + cbtLastModified +: d.lastModified +: sourceFiles.map(_.lastModified) + ).max + if( sourceFiles.isEmpty ){ None }else{ val start = System.currentTimeMillis val lastCompiled = statusFile.lastModified - if( d.lastModified > lastCompiled || sourceFiles.exists(_.lastModified > lastCompiled) ){ + if( lastModified > lastCompiled ){ def Resolver(urls: URL*) = MavenResolver(cbtLastModified, mavenCache, urls: _*) val zinc = Resolver(mavenCentral).bindOne(MavenDependency("com.typesafe.zinc","zinc", zincVersion)) val zincDeps = zinc.transitiveDependencies |