The problem was initially noticed in https://sourceware.org/PR30052#c5
where 'runtest' was passing bogus target name when ran without
parameters:
$ ./result/bin/runtest
...
Target is .runtest-wrapped
Host is x86_64-pc-linux-gnu
Note that runtest switches to non-native mode and uses wrapper name as a
target name. Mechanics of it is a bit involved: 'runtest' itself detects
targets passing via ${0} parameter:
# somewhere in runtest:
mypath=${0-.}
...
if [ "$target" != runtest ] ; then
target="--target ${target}"
else
target=""
fi
which would be fine if we ran 'runtest'.
In `nixpkgs` `runtest` is a shell wrapper:
$ cat /<<NIX>>/dejagnu-1.6.3/bin/runtest
#! /<<NIX>>/bash-5.2-p15/bin/bash -e
...
exec -a "$0" "/<<NIX>>/dejagnu-1.6.3/bin/.runtest-wrapped" "$@"
You would expect that `.runtest-wrapped` would get `$0` as an `argv[0]`
here, but no. If both are `bash` scripts `bash` peeks original
`argv[0]` and breaks `runtest`:
https://lists.gnu.org/archive/html/bug-bash/2023-01/msg00082.html
The workaround here is to drop the wrapper and place `expect` symlink
into a place where `dejagnu` and `runtest` expect it to be without a
wrapper creation.
He prefers to contribute to his own nixpkgs fork triton.
Since he is still marked as maintainer in many packages
this leaves the wrong impression he still maintains those.