--- a/lib/scripts/isabelle-platform Tue Sep 08 11:32:57 2020 +0200
+++ b/lib/scripts/isabelle-platform Wed Sep 30 13:20:33 2020 +0000
@@ -12,8 +12,15 @@
case $(uname -s) in
Linux)
ISABELLE_PLATFORM_FAMILY="linux"
- ISABELLE_PLATFORM32=x86-linux
- ISABELLE_PLATFORM64=x86_64-linux
+ case $(uname -m) in
+ aarch64)
+ ISABELLE_PLATFORM64=arm64-linux
+ ;;
+ *)
+ ISABELLE_PLATFORM32=x86-linux
+ ISABELLE_PLATFORM64=x86_64-linux
+ ;;
+ esac
;;
Darwin)
ISABELLE_PLATFORM_FAMILY="macos"
--- a/src/Pure/System/platform.scala Tue Sep 08 11:32:57 2020 +0200
+++ b/src/Pure/System/platform.scala Wed Sep 30 13:20:33 2020 +0000
@@ -38,11 +38,13 @@
private val X86 = """i.86|x86""".r
private val X86_64 = """amd64|x86_64""".r
+ private val Arm64 = """arm64|aarch64""".r
def cpu_arch: String =
System.getProperty("os.arch", "") match {
case X86() => "x86"
case X86_64() => "x86_64"
+ case Arm64() => "arm64"
case _ => error("Failed to determine CPU architecture")
}