mlton icon indicating copy to clipboard operation
mlton copied to clipboard

Latest MLton fails to build on 10.6–10.7 (only for x86_64)

Open barracuda156 opened this issue 11 months ago • 5 comments

@MatthewFluet Here are results on buildbots: https://ports.macports.org/port/mlton/details We got two systems failing: 10.6 and 10.7, and on 10.6 only x86_64 build fails. (On 10.6 both ppc and i386 are fine.) I guess, MLton 20180207 is just too new, I should fallback to an earlier version for 10.6–10.7 x86_64?

Here are relevant logs: https://build.macports.org/builders/ports-10.6_x86_64-builder/builds/162718/steps/install-port/logs/stdio https://build.macports.org/builders/ports-10.7_x86_64-builder/builds/152346/steps/install-port/logs/stdio

Both segfault on the same spot, though 10.6 sets arch to x86:

/opt/local/bin/gsed -e "s/MLTON_NAME/MLton/" -e "s/MLTON_VERSION/"20230721"/" < control/version_sml.src > control/version.sml
/opt/local/bin/gsed -e "s/MLTON_DEBUG/false/" -e "s/HOST_ARCH/x86/" -e "s/HOST_OS/darwin/" < ../lib/stubs/mlton-stubs/pre-mlton_sml.src > ../lib/stubs/mlton-stubs/pre-mlton.sml
chmod -w front-end/mlb.grm.sml
(cat ../lib/stubs/mlton-stubs/pre-mlton_sml.src; echo 'false' 'x86' 'darwin'; cat ../lib/stubs/mlton-stubs/pre-mlton.sml) | openssl sha1 | /opt/local/bin/gsed 's/.*\([a-z0-9]\{40\}\).*/\1/' > ../lib/stubs/mlton-stubs/pre-mlton_sml.chk
(cat control/version_sml.src; echo 'MLton' '"20230721"'; cat control/version.sml) | openssl sha1 | /opt/local/bin/gsed 's/.*\([a-z0-9]\{40\}\).*/\1/' > control/version_sml.chk
/bin/sh: line 1: 66483 Segmentation fault      /opt/local/libexec/mlton-bootstrap/bin/mlton -stop f "$1"
/bin/sh: line 1: 66544 Segmentation fault      /opt/local/libexec/mlton-bootstrap/bin/mlton -stop f "$1"
/bin/sh: line 1: 66551 Segmentation fault      /opt/local/libexec/mlton-bootstrap/bin/mlton -stop f "$1"
make[2]: *** [mlton-stubs.mlb] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_lang_mlton/mlton/work/mlton-63666ac8ab65da81b9ec9595e7053d26e0682f51/mlton'
make[1]: *** [compiler] Error 2

While 10.7 sets it to arm64:

/opt/local/bin/gsed -e "s/MLTON_NAME/MLton/" -e "s/MLTON_VERSION/"20230721"/" < control/version_sml.src > control/version.sml
/opt/local/bin/gsed -e "s/MLTON_DEBUG/false/" -e "s/HOST_ARCH/amd64/" -e "s/HOST_OS/darwin/" < ../lib/stubs/mlton-stubs/pre-mlton_sml.src > ../lib/stubs/mlton-stubs/pre-mlton.sml
cp -fpR front-end/mlb.grm.sml.boot front-end/mlb.grm.sml
chmod -w front-end/ml.grm.sig
chmod -w front-end/mlb.grm.sig
chmod -w front-end/mlb.grm.sml
(cat ../lib/stubs/mlton-stubs/pre-mlton_sml.src; echo 'false' 'amd64' 'darwin'; cat ../lib/stubs/mlton-stubs/pre-mlton.sml) | openssl sha1 | /opt/local/bin/gsed 's/.*\([a-z0-9]\{40\}\).*/\1/' > ../lib/stubs/mlton-stubs/pre-mlton_sml.chk
(cat control/version_sml.src; echo 'MLton' '"20230721"'; cat control/version.sml) | openssl sha1 | /opt/local/bin/gsed 's/.*\([a-z0-9]\{40\}\).*/\1/' > control/version_sml.chk
/bin/sh: line 1: 33626 Segmentation fault: 11  /opt/local/libexec/mlton-bootstrap/bin/mlton -stop f "$1"
/bin/sh: line 1: 33683 Segmentation fault: 11  /opt/local/libexec/mlton-bootstrap/bin/mlton -stop f "$1"
/bin/sh: line 1: 33690 Segmentation fault: 11  /opt/local/libexec/mlton-bootstrap/bin/mlton -stop f "$1"
make[2]: *** [mlton-stubs.mlb] Error 1
make[2]: Leaving directory `/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_lang_mlton/mlton/work/mlton-63666ac8ab65da81b9ec9595e7053d26e0682f51/mlton'
make[1]: *** [compiler] Error 2
make[1]: Leaving directory `/opt/local/var/macports/build/_opt_bblocal_var_buildworker_ports_build_ports_lang_mlton/mlton/work/mlton-63666ac8ab65da81b9ec9595e7053d26e0682f51'
make: *** [all] Error 2

No idea why arch is picked differently, identical MLton is used for bootstrap for both. Clang differs though: 10.6 has Clang-11, 10.7 has Clang-15. (This we can change as we like.)

Details of bootstrap MLton choice are here: https://github.com/macports/macports-ports/blob/master/lang/mlton-bootstrap/Portfile

barracuda156 avatar Jul 24 '23 21:07 barracuda156