# HG changeset patch # User wenzelm # Date 1706647657 -3600 # Node ID f1c754e60ea08310bee74d73be4dcacf7c34cd90 # Parent 50ee2921da94bc8843db2fce53477e8bec406c60# Parent 333cef4a811e76d270496fef5a30caa1e4d1117c merged diff -r 50ee2921da94 -r f1c754e60ea0 src/Pure/Admin/build_history.scala --- a/src/Pure/Admin/build_history.scala Tue Jan 30 16:39:21 2024 +0000 +++ b/src/Pure/Admin/build_history.scala Tue Jan 30 21:47:37 2024 +0100 @@ -537,6 +537,7 @@ components_base: String = Components.dynamic_components_base, clean_platform: Boolean = false, clean_archives: Boolean = false, + shared_isabelle_self: Boolean = false, progress: Progress = new Progress, rev: String = "", afp_repos: Option[Path] = None, @@ -556,7 +557,7 @@ rev = rev, afp_rev = afp_rev, afp_root = if (afp) afp_repos else None) } - sync(isabelle_self) + if (!shared_isabelle_self) sync(isabelle_self) val self_isabelle = Other_Isabelle(isabelle_self, isabelle_identifier = isabelle_identifier, @@ -564,7 +565,7 @@ val clean_platforms = if (clean_platform) Some(List(ssh.isabelle_platform_family)) else None - self_isabelle.init(fresh = true, echo = true, + self_isabelle.init(fresh = !shared_isabelle_self, echo = true, component_repository = component_repository, other_settings = self_isabelle.init_components(components_base = components_base), clean_platforms = clean_platforms, diff -r 50ee2921da94 -r f1c754e60ea0 src/Pure/Admin/isabelle_cronjob.scala --- a/src/Pure/Admin/isabelle_cronjob.scala Tue Jan 30 16:39:21 2024 +0000 +++ b/src/Pure/Admin/isabelle_cronjob.scala Tue Jan 30 21:47:37 2024 +0100 @@ -129,6 +129,7 @@ history_base: String = "build_history_base", components_base: String = Components.dynamic_components_base, clean_components: Boolean = true, + shared_isabelle_self: Boolean = false, java_heap: String = "", options: String = "", args: String = "", @@ -295,9 +296,11 @@ val remote_builds1: List[List[Remote_Build]] = { List( - List(Remote_Build("Linux (ARM)", "server-arm", + List(Remote_Build("Linux (ARM)", "linux-arm", history_base = "build_history_base_arm", - options = "-m32 -B -M1x2 -p timeout_scale=2" + + clean_components = false, + shared_isabelle_self = true, + options = "-m32 -B -M1x2 -U 4000 -p timeout_scale=2" + " -e ISABELLE_SWIPL=swipl", args = "-a -d '~~/src/Benchmarks'")), List(Remote_Build("Linux B", "lxbroy10", history = 90, @@ -406,6 +409,7 @@ components_base = r.components_base, clean_platform = r.clean_components, clean_archives = r.clean_components, + shared_isabelle_self = r.shared_isabelle_self, rev = rev, afp_repos = if (afp_rev.isDefined) Some(afp_repos) else None, afp_rev = afp_rev.getOrElse(""), @@ -476,8 +480,7 @@ res match { case Exn.Res(_) => None case Exn.Exn(exn) => - Output.writeln("Exception trace for " + quote(task.name) + ":") - exn.printStackTrace() + Output.writeln("Exception trace for " + quote(task.name) + ":\n" + Exn.trace(exn)) val first_line = split_lines(Exn.message(exn)).headOption getOrElse "exception" Some(first_line) } diff -r 50ee2921da94 -r f1c754e60ea0 src/Pure/System/isabelle_platform.scala --- a/src/Pure/System/isabelle_platform.scala Tue Jan 30 16:39:21 2024 +0000 +++ b/src/Pure/System/isabelle_platform.scala Tue Jan 30 21:47:37 2024 +0100 @@ -39,7 +39,6 @@ settings.collectFirst({ case (a, b) if a == name => b }). getOrElse(error("Bad platform settings variable: " + quote(name))) - val ISABELLE_PLATFORM_FAMILY: String = get("ISABELLE_PLATFORM_FAMILY") val ISABELLE_PLATFORM64: String = get("ISABELLE_PLATFORM64") val ISABELLE_WINDOWS_PLATFORM64: String = get("ISABELLE_WINDOWS_PLATFORM64") val ISABELLE_APPLE_PLATFORM64: String = get("ISABELLE_APPLE_PLATFORM64") @@ -48,6 +47,11 @@ ISABELLE_PLATFORM64.startsWith("arm64-") || ISABELLE_APPLE_PLATFORM64.startsWith("arm64-") + val ISABELLE_PLATFORM_FAMILY: String = { + val family0 = get("ISABELLE_PLATFORM_FAMILY") + if (family0 == "linux" && is_arm) "linux_arm" else family0 + } + def is_linux: Boolean = ISABELLE_PLATFORM_FAMILY == "linux" || ISABELLE_PLATFORM_FAMILY == "linux_arm"