Skip to content

Binary Release

Binary Release #1

Workflow file for this run

name: Binary Release
on:
workflow_dispatch:
inputs:
mlton-version:
required: true
type: string
workflow_call:
inputs:
mlton-version:
required: true
type: string
jobs:
binary-release:
strategy:
fail-fast: false
matrix:
include:
- runner: "ubuntu-24.04"
mlton-binary-release-suffix-xtra: "glibc$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC__ (.*);\\1;p').$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC_MINOR__ (.*);\\1;p')"
- runner: "ubuntu-24.04"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "ubuntu-22.04"
mlton-binary-release-suffix-xtra: "glibc$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC__ (.*);\\1;p').$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC_MINOR__ (.*);\\1;p')"
- runner: "ubuntu-22.04"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "ubuntu-24.04-arm"
mlton-binary-release-suffix-xtra: "glibc$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC__ (.*);\\1;p').$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC_MINOR__ (.*);\\1;p')"
- runner: "ubuntu-24.04-arm"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "ubuntu-22.04-arm"
mlton-binary-release-suffix-xtra: "glibc$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC__ (.*);\\1;p').$(cc -dM -E - <<< '#include <stdlib.h>' | sed -En 's;#define __GLIBC_MINOR__ (.*);\\1;p')"
- runner: "ubuntu-22.04-arm"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "macos-15-intel"
mlton-binary-release-suffix-xtra: "gmp-homebrew"
- runner: "macos-15-intel"
mlton-compile-args: "-gmp-link-opt $(brew --prefix)/lib/libgmp.a"
mlton-binary-release-suffix-xtra: "gmp-static"
- runner: "macos-14"
mlton-binary-release-suffix-xtra: "gmp-homebrew"
- runner: "macos-14"
mlton-compile-args: "-gmp-link-opt $(brew --prefix)/lib/libgmp.a"
mlton-binary-release-suffix-xtra: "gmp-static"
- runner: "macos-15"
mlton-binary-release-suffix-xtra: "gmp-homebrew"
- runner: "macos-15"
mlton-compile-args: "-gmp-link-opt $(brew --prefix)/lib/libgmp.a"
mlton-binary-release-suffix-xtra: "gmp-static"
- runner: "macos-26"
mlton-binary-release-suffix-xtra: "gmp-homebrew"
- runner: "macos-26"
mlton-compile-args: "-gmp-link-opt $(brew --prefix)/lib/libgmp.a"
mlton-binary-release-suffix-xtra: "gmp-static"
- runner: "windows-2025"
msystem: "mingw64"
mlton-binary-release-suffix-xtra: ""
- runner: "windows-2025"
msystem: "mingw64"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "windows-2025"
msystem: "ucrt64"
mlton-binary-release-suffix-xtra: ""
- runner: "windows-2025"
msystem: "ucrt64"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "windows-2025"
msystem: "clang64"
mlton-binary-release-suffix-xtra: ""
- runner: "windows-2025"
msystem: "clang64"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "windows-2022"
msystem: "mingw64"
mlton-binary-release-suffix-xtra: ""
- runner: "windows-2022"
msystem: "mingw64"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "windows-2022"
msystem: "ucrt64"
mlton-binary-release-suffix-xtra: ""
- runner: "windows-2022"
msystem: "ucrt64"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
- runner: "windows-2022"
msystem: "clang64"
mlton-binary-release-suffix-xtra: ""
- runner: "windows-2022"
msystem: "clang64"
mlton-compile-args: "-link-opt -static"
mlton-binary-release-suffix-xtra: "static"
uses: ./.github/workflows/binary-release-single.yml
with:
mlton-version: ${{ inputs.mlton-version }}
runner: ${{ matrix.runner }}
msystem: ${{ matrix.msystem }}
old-mlton-runtime-args: ${{ matrix.old-mlton-runtime-args }}
old-mlton-compile-args: ${{ matrix.old-mlton-compile-args }}
mlton-runtime-args: ${{ matrix.mlton-runtime-args }}
mlton-compile-args: ${{ matrix.mlton-compile-args }}
mlton-binary-release-suffix-xtra: ${{ matrix.mlton-binary-release-suffix-xtra }}
secrets: inherit