We can reduce our differences from upstream ksh by simply using their
ERROR_translate() function instead of our janky and obsolete msg_translate,
we also move DtGetMessage() to msgs.c and lockedfiledescriptors and,
unlockfiledescriptors to extra.c to lessen modifications to init.c, which
all changes will hopefully be moved elsewhere in the future
dtksh can be now compiled on FreeBSD. Work in progress.
Needs a real Korn shell to bootstrap as $(KSHELL).
KSHELL is set by default to /usr/local/bin/ksh93
(generic POSIX shell may not work)
Tested on:
FreeBSD 9.0-BETA1 #0 r224912M amd64
Known issues:
xvmstat:
* sleep does not work well (SIGSTOP is delivered)
xpong:
* xpong: line 220: ball1x = max_x * 2.2 / 3 : arithmetic syntax error
* dtksh is rebuilt uncondtionally every time make is invoked