src/Pure/Admin/component_mlton.scala
author wenzelm
Thu, 21 Mar 2024 14:19:05 +0100
changeset 79951 84f2d481d6d7
child 79961 2b9205301ff5
permissions -rw-r--r--
update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
79951
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     1
/*  Title:      Pure/Admin/component_mlton.scala
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     2
    Author:     Makarius
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     3
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     4
Build Isabelle component for MLton. See also:
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     5
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     6
  - http://mlton.org
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     7
  - https://projects.laas.fr/tina/software.php
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     8
*/
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
     9
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    10
package isabelle
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    11
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    12
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    13
object Component_MLton {
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    14
  /* platform information */
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    15
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    16
  sealed case class Download_Platform(platform_name: String, download_name: String) {
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    17
    def download(base_url: String, version: String): String =
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    18
      Url.append_path(base_url, version + "." + download_name)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    19
  }
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    20
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    21
  val platforms: List[Download_Platform] =
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    22
    List(
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    23
      Download_Platform("arm64-darwin", "arm64-darwin-21.6-gmp-static.tgz"),
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    24
      Download_Platform("x86_64-darwin", "amd64-darwin-16.7-gmp-static.tgz"),
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    25
      Download_Platform("x86_64-linux", "amd64-linux-glibc2.19-gmp-static.tgz"))
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    26
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    27
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    28
  /* build mlton */
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    29
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    30
  val default_url = "https://projects.laas.fr/tina/software"
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    31
  val default_version = "mlton-20210117-1"
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    32
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    33
  def build_mlton(
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    34
    base_url: String = default_url,
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    35
    version: String = default_version,
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    36
    target_dir: Path = Path.current,
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    37
    progress: Progress = new Progress
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    38
  ): Unit = {
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    39
    val component_dir =
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    40
      Components.Directory(target_dir + Path.basic(version)).create(progress = progress)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    41
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    42
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    43
    /* download executables */
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    44
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    45
    for (platform <- platforms) {
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    46
      Isabelle_System.with_tmp_dir("download") { download_dir =>
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    47
        val download = platform.download(base_url, version)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    48
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    49
        val archive_name =
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    50
          Url.get_base_name(download) getOrElse
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    51
            error("Malformed download URL " + quote(download))
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    52
        val archive_path = download_dir + Path.basic(archive_name)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    53
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    54
        val platform_dir = component_dir.path + Path.explode(platform.platform_name)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    55
        Isabelle_System.make_directory(platform_dir)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    56
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    57
        Isabelle_System.download_file(download, archive_path, progress = progress)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    58
        Isabelle_System.extract(archive_path, platform_dir, strip = true)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    59
        Isabelle_System.copy_file(platform_dir + Path.basic("LICENSE"), platform_dir.expand.dir)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    60
      }
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    61
    }
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    62
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    63
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    64
  /* settings */
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    65
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    66
    component_dir.write_settings("""
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    67
if [ -d "$COMPONENT/${ISABELLE_APPLE_PLATFORM64:-$ISABELLE_PLATFORM64}" ]; then
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    68
  ISABELLE_MLTON="$COMPONENT/${ISABELLE_APPLE_PLATFORM64:-$ISABELLE_PLATFORM64}/bin/mlton"
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    69
  case "$ISABELLE_PLATFORM_FAMILY" in
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    70
    linux*)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    71
      ISABELLE_MLTON_OPTIONS="-pi-style npi"
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    72
      ;;
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    73
    *)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    74
      ISABELLE_MLTON_OPTIONS=""
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    75
      ;;
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    76
  esac
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    77
fi
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    78
""")
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    79
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    80
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    81
    /* README */
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    82
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    83
    File.write(component_dir.README,
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    84
      """This distribution of MLton has been taken from the TINA project
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    85
https://projects.laas.fr/tina/software.php using following downloads:""" +
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    86
        platforms.map(_.download(base_url, version)).mkString("\n\n  ", "\n  ", "\n\n") +
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    87
"""Some Isabelle platforms are unsupported, notably Windows and Linux ARM.
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    88
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    89
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    90
        Makarius
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    91
        """ + Date.Format.date(Date.now()) + "\n")
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    92
  }
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    93
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    94
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    95
  /* Isabelle tool wrapper */
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    96
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    97
  val isabelle_tool =
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    98
    Isabelle_Tool("component_mlton", "build component for MLton", Scala_Project.here,
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
    99
      { args =>
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   100
        var target_dir = Path.current
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   101
        var base_url = default_url
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   102
        var version = default_version
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   103
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   104
        val getopts = Getopts("""
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   105
Usage: isabelle component_mlton [OPTIONS]
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   106
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   107
  Options are:
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   108
    -D DIR       target directory (default ".")
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   109
    -U URL       download URL (default: """" + default_url + """")
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   110
    -V VERSION   version (default: """" + default_version + """")
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   111
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   112
  Build component for MLton compiler.
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   113
""",
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   114
          "D:" -> (arg => target_dir = Path.explode(arg)),
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   115
          "U:" -> (arg => base_url = arg),
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   116
          "V:" -> (arg => version = arg))
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   117
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   118
        val more_args = getopts(args)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   119
        if (more_args.nonEmpty) getopts.usage()
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   120
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   121
        val progress = new Console_Progress()
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   122
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   123
        build_mlton(base_url = base_url, version = version, target_dir = target_dir,
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   124
          progress = progress)
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   125
      })
84f2d481d6d7 update to mlton-20210117-2, which covers x86_64-linux, x86_64-darwin, arm64-darwin;
wenzelm
parents:
diff changeset
   126
}