13684d66b6
.[tg] Improve præprocessor detection/work in Build.sh .[tg] Decouple MKSH_CONSERVATIVE_FDS from MKSH_SMALL .[tg] Enable MKSH_CONSERVATIVE_FDS by default on Minix 3 .[tg] Work around the (in-)famous ACK "const" bug .[tg] Optimise structure alignment and padding; Closes: #522778 .[tg] Retain LOCPATH (for glibc locale) in check.pl .[tg] Document, simplify and clean up the code better .[tg] Use mirbsd.org eMail addresses consistently mksh R37b comes with the following fixes on top: .[tg] Clean up build system and dot.mkshrc some more .[tg] Add getrusage(2) implementation using times(3) if none found .[tg] Add jobless mode (for Minix 3, Plan 9, .) .[tg] Detect the Amsterdam Compiler Kit in the build system .[tg] If no RLIM_INFINITY don.t try to do ulimit .[tg] Work around gcc4 strict warnings vs. broken system headers .[tg] Work around systems with mmap(2) but no munmap(2) .[tg] Fix (disallow) bind key macro recursion (instead of beeping and going into an endless loop), allow multi-line bind key macros (mostly from Alexander Hall), remove dead code (the beeping) and optimise .[tg] Add (commented out, undesired, standards compliance breaking) compatibility code to MidnightBSD 0.1 /bin/sh for ctriv .[tg] Clarify the mksh(1) manual page even more .[tg] Port to Minix 3 + GCC mksh R37 has major standards compliance improvements: .[tg] Rename -o utf8-hack to -o utf8-mode .[tg] Fix spacing mode error (pasto) in the mdoc(7) format manpage .[tg] Implement $((#.)) unsigned arithmetic calculation, needed for arc4random_uniform(3)-in-korn-shell implementation .[tg] Really preserve LD_LIBRARY_PATH in check.pl .[tg] New Build.sh option .-combine. for building mksh(1) at once with .-fwhole-program --combine. (gcc4, llvm-gcc4) if available .[tg] Always set COLUMNS and LINES trying as hard as we can, using TIOCGWINSZ even if used without FTALKING, and with the sane 80x24 default if the ioctl(2) fails .[tg] Handle _POSIX_VDISABLE being undefined (e.g. Linux/klibc) .[tg] <sys/file.h> is only required for flock(2) .[tg] Fix multi-column output routine for the corner case if the screen is less wide than one output column; 10x Gábor Gergely .[tg] Fix ${foo/@(%)/\\x} in UTF-8 mode (utf_widthadj for control characters U+0080.U+009F is slightly broken; this fix shifts the brokenness into the command line editing mode only) .[tg] Introduce mksh_ari_t and mksh_uari_t internal types to limit arithmetics to 32 bit on all systems; currently depending on the already-used standard int32_t and uint32_t types. Future expansion to 64 bit possible. Document that shell integer variables use this type. .[tg] The variables PGRP, PPID, RANDOM and USER_ID are now unsigned .[tg] Fix two off-by-ones breaking PS1 ending with a newline; bug reported by Matthias Diener .[tg] Just pass through C1 control characters for now .[tg] Code and internal interfaces cleanup .[tg] Regression test fixes for Cygwin env(1) being unsorted .[tg] Replace the memory allocator by something equally simple and homegrown but optimised for use with mksh and free checking .[tg] Import a couple of minor fixes (e.g. spelling) from oksh .[tg] Fix problems with "set -e" for real; from oksh, Closes: #518359 .[tg] In "set -o posix" mode, have limited echo(1) to improve standards compliance; the exact feature set is open for discussion, e.g. with pkgsrc® people; for now, only -n as first arg .[tg] Make test builtin operator precedence consistent; from oksh .[tg] Revamp and fold and enhance the regression tests .[tg] Document somewhat surprising behaviour in mksh(1) better; here: [ x -eq y ]; for gps23 from #ksh .[tg] Reduce memory consumption by allocator simplification .[tg] Fix bugs spotted by DEC ucode cc (ULTRIX) and gcc 1.42 (BSD/OS) .[laffer1] Make mksh the default /bin/sh in MidnightBSD
10 lines
653 B
Text
10 lines
653 B
Text
mksh is the MirBSD enhanced version of the Public Domain Korn shell (pdksh),
|
|
a Bourne-compatible shell which is largely si. milar to the original AT&T
|
|
Korn shell; mksh is the only pdksh derivate currently being actively developed.
|
|
It includes bug fixes and feature improvements, in order to produce a modern,
|
|
robust shell good for interactive and especially script use.
|
|
|
|
The code has throughoutly been cleaned up and simplified, bugs fixed, standards
|
|
compliance added, and several enhancements (for extended compatibility to other
|
|
modern shells, as well as a couple of its own) have been placed. mksh has UTF-8
|
|
support (e.g. in the emacs editing mode).
|