From 86c4ac202605480f611a935c2bf84531a82eaadb Mon Sep 17 00:00:00 2001 From: Jason Zaugg Date: Mon, 7 Nov 2016 17:02:50 +1000 Subject: Silence SBT logging about macros and incremental compilation. Since upgrading to SBT 0.13.12, clean builds have incurred warnings like: Because JavaMirrors.scala contains a macro definition, the following dependencies are invalidated unconditionally: .... This commit disables this behaviour of the SBT incremental compiler in the library and reflect projects, as these aren't regular macros (the macro implementations are hard coded in the compiler in `FastTrack`) so the new behaviour isn't actually improving correctness of inc. compilation. --- build.sbt | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'build.sbt') diff --git a/build.sbt b/build.sbt index 3b0c74a0ee..1ae5edb4d5 100644 --- a/build.sbt +++ b/build.sbt @@ -358,6 +358,8 @@ lazy val library = configureAsSubproject(project) "-doc-root-content", (sourceDirectory in Compile).value + "/rootdoc.txt" ) }, + // macros in library+reflect are hard-wired to implementations with `FastTrack`. + incOptions := incOptions.value.withRecompileOnMacroDef(false), includeFilter in unmanagedResources in Compile := "*.tmpl" | "*.xml" | "*.js" | "*.css" | "rootdoc.txt", // Include *.txt files in source JAR: mappings in Compile in packageSrc ++= { @@ -389,6 +391,8 @@ lazy val reflect = configureAsSubproject(project) .settings( name := "scala-reflect", description := "Scala Reflection Library", + // macros in library+reflect are hard-wired to implementations with `FastTrack`. + incOptions := incOptions.value.withRecompileOnMacroDef(false), Osgi.bundleName := "Scala Reflect", scalacOptions in Compile in doc ++= Seq( "-skip-packages", "scala.reflect.macros.internal:scala.reflect.internal:scala.reflect.io" -- cgit v1.2.3