equal
deleted
inserted
replaced
26 /* context */ |
26 /* context */ |
27 |
27 |
28 sealed case class Context( |
28 sealed case class Context( |
29 store: Store, |
29 store: Store, |
30 build_deps: isabelle.Sessions.Deps, |
30 build_deps: isabelle.Sessions.Deps, |
31 engine: Engine = Default_Engine, |
31 engine: Engine = Engine.Default, |
32 afp_root: Option[Path] = None, |
32 afp_root: Option[Path] = None, |
33 build_hosts: List[Build_Cluster.Host] = Nil, |
33 build_hosts: List[Build_Cluster.Host] = Nil, |
34 ml_platform: String = Isabelle_System.getenv("ML_PLATFORM"), |
34 ml_platform: String = Isabelle_System.getenv("ML_PLATFORM"), |
35 hostname: String = Isabelle_System.hostname(), |
35 hostname: String = Isabelle_System.hostname(), |
36 numa_shuffling: Boolean = false, |
36 numa_shuffling: Boolean = false, |
102 lazy val services: List[Engine] = |
102 lazy val services: List[Engine] = |
103 Isabelle_System.make_services(classOf[Engine]) |
103 Isabelle_System.make_services(classOf[Engine]) |
104 |
104 |
105 def apply(name: String): Engine = |
105 def apply(name: String): Engine = |
106 services.find(_.name == name).getOrElse(error("Bad build engine " + quote(name))) |
106 services.find(_.name == name).getOrElse(error("Bad build engine " + quote(name))) |
|
107 |
|
108 class Default extends Engine("") { override def toString: String = "<default>" } |
|
109 object Default extends Default |
107 } |
110 } |
108 |
111 |
109 class Engine(val name: String) extends Isabelle_System.Service { |
112 class Engine(val name: String) extends Isabelle_System.Service { |
110 override def toString: String = name |
113 override def toString: String = name |
111 |
114 |
139 using(open_build_process(context, progress, server))(_.run()) |
142 using(open_build_process(context, progress, server))(_.run()) |
140 } |
143 } |
141 } |
144 } |
142 } |
145 } |
143 |
146 |
144 class Default_Engine extends Engine("") { override def toString: String = "<default>" } |
|
145 object Default_Engine extends Default_Engine |
|
146 |
147 |
147 |
148 |
148 /* build */ |
149 /* build */ |
149 |
150 |
150 def build( |
151 def build( |