src/Pure/Admin/build_history.scala
changeset 77129 c79da77d9e87
parent 77128 f40c36ab154d
child 77131 c8d34e74a12b
equal deleted inserted replaced
77128:f40c36ab154d 77129:c79da77d9e87
   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)