Some additionnal elements: - shells/bash seems to be a RUN_DEPENDS (or scripts should be reviewed and switched to ksh if possible).
$ mlton env: bash: No such file or directory ./usr/local/bin/mlton:#!/usr/bin/env bash ./usr/local/lib/mlton/platform:#!/usr/bin/env bash ./usr/local/lib/mlton/static-library:#! /usr/bin/env bash - mprotect(2) violations for mlton and all binaries builded with mlton mlton-on-20130715-release/runtime/platform/mmap-protect.c 10: if (mprotect (result, length, PROT_READ | PROT_WRITE | PROT_EXEC)) 11: diee ("mprotect failed"); this code is reach in GC initialisation (it builds a sigaltstack with its own page protection (PROT_NONE)). it makes mlton (and binaries compiled with mlton) violating W^X. I tried removing PROT_EXEC as this block of memory is used for sigaltstack(2) (stack_t.ss_sp), and this stack shouldn't required to be executable. I just have done simple testing. - lot of failure in building of tests due to ld errors: "relocation R_X86_64_32S against `a local symbol' can not be used when making a shared object; recompile with -fPIC" according to https://github.com/MLton/mlton/issues/148 you should add | (OpenBSD, _, _) => true at line 936 to force compilation with position independent executable which that, after a rebuild of the bootstrapper, it seems to be ok (no more ld errors). -- Sebastien Marie