--- a/src/Pure/Tools/build.scala Sun May 23 23:15:04 2021 +0200
+++ b/src/Pure/Tools/build.scala Mon May 24 11:58:06 2021 +0200
@@ -169,7 +169,6 @@
selection: Sessions.Selection = Sessions.Selection.empty,
presentation: Presentation.Context = Presentation.Context.none,
progress: Progress = new Progress,
- log: Logger = No_Logger,
check_unknown_files: Boolean = false,
build_heap: Boolean = false,
clean_build: Boolean = false,
@@ -293,6 +292,13 @@
def sleep(): Unit =
Isabelle_Thread.interrupt_handler(_ => progress.stop()) { Time.seconds(0.5).sleep() }
+ val log =
+ build_options.string("system_log") match {
+ case "" => No_Logger
+ case "-" => Logger.make(progress)
+ case log_file => Logger.make(Some(Path.explode(log_file)))
+ }
+
val numa_nodes = new NUMA.Nodes(numa_shuffling)
@tailrec def loop(
@@ -419,7 +425,7 @@
val numa_node = numa_nodes.next(used_node)
val job =
new Build_Job(progress, session_name, info, deps, store, do_store,
- verbose, numa_node, log, queue.command_timings(session_name))
+ verbose, log, numa_node, queue.command_timings(session_name))
loop(pending, running + (session_name -> (ancestor_heaps, job)), results)
}
else {
@@ -556,7 +562,6 @@
Options are:
-B NAME include session NAME and all descendants
-D DIR include session directory and select its sessions
- -L FILE append syslog messages to given FILE
-N cyclic shuffling of NUMA CPU nodes (performance tuning)
-P DIR enable HTML/PDF presentation in directory (":" for default)
-R refer to requirements of selected sessions
@@ -582,7 +587,6 @@
""" + Library.indent_lines(2, Build_Log.Settings.show()) + "\n",
"B:" -> (arg => base_sessions = base_sessions ::: List(arg)),
"D:" -> (arg => select_dirs = select_dirs ::: List(Path.explode(arg))),
- "L:" -> (arg => log = Logger.make(Some(Path.explode(arg)))),
"N" -> (_ => numa_shuffling = true),
"P:" -> (arg => presentation = Presentation.Context.make(arg)),
"R" -> (_ => requirements = true),
@@ -629,7 +633,6 @@
sessions = sessions),
presentation = presentation,
progress = progress,
- log = log,
check_unknown_files = Mercurial.is_repository(Path.ISABELLE_HOME),
build_heap = build_heap,
clean_build = clean_build,