owl-lisp: Use dash for tests

On aarch64-linux the test fail to terminate, with bash printing a
message like this over and over again:

tests/run: line 63: wait: pid 105 is not a child of this shell

Running in GDB reveals that the is stuck in an infinite loop in
wait_for_background_pids waiting for a child that is no longer there,
suggesting that it's a bug in Bash.

Work around it for now by running tests in DASH instead.
This commit is contained in:
dramforever 2025-07-28 15:50:12 +08:00
parent 8f2561f533
commit 95632ac02f

View File

@ -3,6 +3,7 @@
stdenv,
fetchFromGitLab,
which,
dash,
}:
stdenv.mkDerivation rec {
@ -16,7 +17,17 @@ stdenv.mkDerivation rec {
hash = "sha256-GfvOkYLo8fgAvGuUa59hDy+sWJSwyntwqMO8TAK/lUo=";
};
nativeBuildInputs = [ which ];
nativeBuildInputs = [
which
dash
];
# Tests fail with bash, replacing with dash seems to work around it
# FIXME: Why?
postPatch = ''
substituteInPlace Makefile \
--replace-fail 'sh tests/run' 'dash tests/run'
'';
makeFlags = [
"PREFIX=${placeholder "out"}"