mirror of https://github.com/sbt/sbt.git
inject current Configuration into settings
This commit is contained in:
parent
266df4c1ad
commit
d9d4869e49
|
|
@ -11,7 +11,7 @@ package sbt
|
||||||
import scala.annotation.tailrec
|
import scala.annotation.tailrec
|
||||||
import collection.mutable
|
import collection.mutable
|
||||||
import Compile.{Compilers,Inputs}
|
import Compile.{Compilers,Inputs}
|
||||||
import Project.{AppConfig, ScopedKey, Setting, ThisProject, ThisProjectRef}
|
import Project.{AppConfig, Config, ScopedKey, Setting, ThisProject, ThisProjectRef}
|
||||||
import TypeFunctions.{Endo,Id}
|
import TypeFunctions.{Endo,Id}
|
||||||
import tools.nsc.reporters.ConsoleReporter
|
import tools.nsc.reporters.ConsoleReporter
|
||||||
|
|
||||||
|
|
@ -258,10 +258,12 @@ object Load
|
||||||
val (pluginThisProject, pluginGlobal) = pluginSettings partition isProjectThis
|
val (pluginThisProject, pluginGlobal) = pluginSettings partition isProjectThis
|
||||||
val projectSettings = build.defined flatMap { case (id, project) =>
|
val projectSettings = build.defined flatMap { case (id, project) =>
|
||||||
val srcs = configurationSources(project.base)
|
val srcs = configurationSources(project.base)
|
||||||
|
val ref = ProjectRef(Some(uri), Some(id))
|
||||||
|
val defineConfig = for(c <- project.configurations) yield (Config(ref, ConfigKey(c.name)) :== c)
|
||||||
val settings =
|
val settings =
|
||||||
(ThisProject :== project) +:
|
(ThisProject :== project) +:
|
||||||
(ThisProjectRef :== ProjectRef(Some(uri), Some(id))) +:
|
(ThisProjectRef :== ref) +:
|
||||||
(project.settings ++ pluginThisProject ++ configurations(srcs, eval, build.imports))
|
(defineConfig ++ project.settings ++ pluginThisProject ++ configurations(srcs, eval, build.imports))
|
||||||
|
|
||||||
// map This to thisScope, Select(p) to mapRef(uri, rootProject, p)
|
// map This to thisScope, Select(p) to mapRef(uri, rootProject, p)
|
||||||
transformSettings(projectScope(uri, id), uri, rootProject, settings)
|
transformSettings(projectScope(uri, id), uri, rootProject, settings)
|
||||||
|
|
|
||||||
|
|
@ -91,7 +91,7 @@ object Project extends Init[Scope]
|
||||||
val AppConfig = SettingKey[xsbti.AppConfiguration]("app-configuration")
|
val AppConfig = SettingKey[xsbti.AppConfiguration]("app-configuration")
|
||||||
val ThisProject = SettingKey[Project]("project")
|
val ThisProject = SettingKey[Project]("project")
|
||||||
val ThisProjectRef = SettingKey[ProjectRef]("project-ref")
|
val ThisProjectRef = SettingKey[ProjectRef]("project-ref")
|
||||||
|
val Config = SettingKey[Configuration]("configuration")
|
||||||
}
|
}
|
||||||
|
|
||||||
import SessionSettings._
|
import SessionSettings._
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue