112 multicore_base: Boolean = false, |
112 multicore_base: Boolean = false, |
113 multicore_list: List[(Int, Int)] = List(default_multicore), |
113 multicore_list: List[(Int, Int)] = List(default_multicore), |
114 arch_64: Boolean = false, |
114 arch_64: Boolean = false, |
115 heap: Int = default_heap, |
115 heap: Int = default_heap, |
116 max_heap: Option[Int] = None, |
116 max_heap: Option[Int] = None, |
117 init_settings: List[String] = Nil, |
|
118 more_settings: List[String] = Nil, |
117 more_settings: List[String] = Nil, |
119 more_preferences: List[String] = Nil, |
118 more_preferences: List[String] = Nil, |
120 verbose: Boolean = false, |
119 verbose: Boolean = false, |
121 build_tags: List[String] = Nil, |
120 build_tags: List[String] = Nil, |
122 build_args: List[String] = Nil |
121 build_args: List[String] = Nil |
195 |
194 |
196 val component_settings = |
195 val component_settings = |
197 other_isabelle.init_components( |
196 other_isabelle.init_components( |
198 components_base = components_base, |
197 components_base = components_base, |
199 catalogs = Components.optional_catalogs) |
198 catalogs = Components.optional_catalogs) |
200 other_isabelle.init_settings(component_settings ::: init_settings) |
199 other_isabelle.init_settings(component_settings) |
201 resolve_components() |
200 resolve_components() |
202 val ml_platform = |
201 val ml_platform = |
203 augment_settings(other_isabelle, threads, arch_64, heap, max_heap, more_settings) |
202 augment_settings(other_isabelle, threads, arch_64, heap, max_heap, more_settings) |
204 |
203 |
205 File.write(other_isabelle.etc_preferences, cat_lines(more_preferences)) |
204 File.write(other_isabelle.etc_preferences, cat_lines(more_preferences)) |
413 var component_repository = Components.static_component_repository |
412 var component_repository = Components.static_component_repository |
414 var more_settings: List[String] = Nil |
413 var more_settings: List[String] = Nil |
415 var more_preferences: List[String] = Nil |
414 var more_preferences: List[String] = Nil |
416 var fresh = false |
415 var fresh = false |
417 var hostname = "" |
416 var hostname = "" |
418 var init_settings: List[String] = Nil |
|
419 var arch_64 = false |
417 var arch_64 = false |
420 var output_file = "" |
418 var output_file = "" |
421 var ml_statistics_step = 1 |
419 var ml_statistics_step = 1 |
422 var build_tags = List.empty[String] |
420 var build_tags = List.empty[String] |
423 var verbose = false |
421 var verbose = false |
473 "R:" -> (arg => component_repository = arg), |
471 "R:" -> (arg => component_repository = arg), |
474 "U:" -> (arg => max_heap = Some(Value.Int.parse(arg))), |
472 "U:" -> (arg => max_heap = Some(Value.Int.parse(arg))), |
475 "e:" -> (arg => more_settings = more_settings ::: List(arg)), |
473 "e:" -> (arg => more_settings = more_settings ::: List(arg)), |
476 "f" -> (_ => fresh = true), |
474 "f" -> (_ => fresh = true), |
477 "h:" -> (arg => hostname = arg), |
475 "h:" -> (arg => hostname = arg), |
478 "i:" -> (arg => init_settings = init_settings ::: List(arg)), |
|
479 "m:" -> |
476 "m:" -> |
480 { |
477 { |
481 case "32" | "x86" => arch_64 = false |
478 case "32" | "x86" => arch_64 = false |
482 case "64" | "x86_64" => arch_64 = true |
479 case "64" | "x86_64" => arch_64 = true |
483 case bad => error("Bad processor architecture: " + quote(bad)) |
480 case bad => error("Bad processor architecture: " + quote(bad)) |
505 component_repository = component_repository, components_base = components_base, |
502 component_repository = component_repository, components_base = components_base, |
506 clean_platforms = clean_platforms, clean_archives = clean_archives, |
503 clean_platforms = clean_platforms, clean_archives = clean_archives, |
507 fresh = fresh, hostname = hostname, multicore_base = multicore_base, |
504 fresh = fresh, hostname = hostname, multicore_base = multicore_base, |
508 multicore_list = multicore_list, arch_64 = arch_64, |
505 multicore_list = multicore_list, arch_64 = arch_64, |
509 heap = heap.getOrElse(if (arch_64) default_heap * 2 else default_heap), |
506 heap = heap.getOrElse(if (arch_64) default_heap * 2 else default_heap), |
510 max_heap = max_heap, init_settings = init_settings, more_settings = more_settings, |
507 max_heap = max_heap, more_settings = more_settings, |
511 more_preferences = more_preferences, verbose = verbose, build_tags = build_tags, |
508 more_preferences = more_preferences, verbose = verbose, build_tags = build_tags, |
512 build_args = build_args) |
509 build_args = build_args) |
513 |
510 |
514 if (output_file.isEmpty) { |
511 if (output_file.isEmpty) { |
515 for ((_, log_path) <- results) Output.writeln(log_path.implode, stdout = true) |
512 for ((_, log_path) <- results) Output.writeln(log_path.implode, stdout = true) |