tg
5386859b3f
also get back octal crap for LEGACY KSH
2012-06-25 16:31:18 +00:00
tg
1f5c10c8b6
sync w/ oksh
2012-06-25 16:22:59 +00:00
tg
884fdef2b2
first LEGACY changes: keep filedescriptors always open; revert to historic ‘set -- $(getopt …)’ behaviour
2012-06-25 16:17:54 +00:00
tg
967e929e98
add basic LEGACY KSH mode (Build.sh -L), no changes yet
2012-06-25 16:05:10 +00:00
tg
b0543ef064
define $tfn default late (for Things To Come™)
2012-06-24 20:47:07 +00:00
tg
3ebfd6e563
new option -t (target shell filename)
2012-06-24 20:46:07 +00:00
tg
6f1078606e
bump after dealing with all things Benny had Coverity find
...
remainging CIDs not listed are either
• false positive (bug in coverity)
• intentional (possibly with lint override coverity doesn't parse)
• VLA (XXX find out how to mix C99 and ANSI VLAs)
• things flagged as possible resource leaks I have no idea about
(no biggie though, and only in error cases I think)
2012-06-24 20:39:26 +00:00
tg
b3b3aec17e
CID 703478: probably can’t happen, but…
2012-06-24 20:15:47 +00:00
tg
10aa532414
these want to be bool, not int
...
but no idea how to address CID 703483, if it needs to be addressed at all…
2012-06-24 20:05:23 +00:00
tg
025a6a325e
CID 703484: resource leak in error path
2012-06-24 20:00:51 +00:00
tg
df81e96d67
Coverity 703490: better zero out sigact
2012-06-24 19:47:11 +00:00
tg
252a7ce68f
Coverity 703479: add missing /* FALLTHROUGH */
2012-06-24 19:36:27 +00:00
tg
4c65f518af
RT says: libc5 uses __inline__ for its inline stuff, but lcc doesn't support __inline__ but __inline
2012-05-18 01:38:04 +00:00
tg
1eebfa8b85
check whether klibc sigsuspend() is usable: RT or hpa’s two new methods; if not, deactivate it
2012-05-17 19:36:41 +00:00
tg
6b2aa91ddd
add a way to detect varying C libraries or other stuff “extra type”
...
(for now klibc) alongside “compiler type”
if klibc, add -DMKSH_NO_LIMITS automatically
2012-05-17 19:14:07 +00:00
tg
d05c7c4867
recognise (but don’t do anything with, yet) lcc (from RT)
2012-05-17 18:54:28 +00:00
tg
3125146b43
Fix typeset issues (LP: #993847 )
...
This was actually more evil:
• use a recursive function to display blocks in reverse order,
so that local variable values overwrite global ones
• add array support to typeset -p (from typeset -p -)
• display 'set -A varname' line before setting values, for -p
• if -p got arguments, only display those (from the innermost scope)
Also, the usual amount of code cleanup…
2012-05-09 23:21:00 +00:00
tg
b89b96a4ab
RT says not using sigsuspend helps Syllable (but is still buggy, see http://forum.syllable.org/viewtopic.php?p=8171 and probably (doesn’t work for me) http://pyro-os.org/?section=Forum&forum=Bugs&zpbw_postKey=NUgSMp85XGHKbF751zJ6Ww which show the bug affects all shells)
2012-05-09 23:20:42 +00:00
tg
1117a25748
• sync clog
...
• write more notes on klibc, BeOS, Coherent, PW32, Syllable, Xenix
• sort DOS OE section to where it belongs
• add TARGET_OS=_svr4 for Dell UNIX
2012-05-07 17:03:03 +00:00
tg
d9d2485905
overhaul the grep(1)s and sed(1)s – see re_format(7)
2012-05-06 15:40:31 +00:00
tg
06f8194dfb
Valgrind says: close(-1) is not nice
2012-05-05 18:04:20 +00:00
tg
ea8f29f428
sprinkle CONSERVATIVE_FDS for many older OSes; DISABLE_TTY_WARNING for BeOS and Coherent (probably more to come); NO_CMDLINE_EDITING to Plan 9; put Hurd NO_PATH_MAX into MKSH__ private namespace
2012-05-05 17:37:44 +00:00
tg
29e36ed2a2
move x_mkraw() to main.c from edit.c in order to be able to skip the latter
2012-05-05 17:32:33 +00:00
tg
64447e738d
my own over-optimisation prevents me from making the MKSH__NO_SYMLINK
...
case as nice as it could be, since part of the “if (0) {” case is jumped
into for the first run of the loop… thanks RT
2012-05-05 15:10:39 +00:00
tg
f34cae3997
keep up
2012-05-04 22:44:34 +00:00
tg
27387673a4
new MKSH_DISABLE_TTY_WARNING for ports that just can’t help it
...
TODO: add_cppflags this automatically in the TARGET_OS switch for some
2012-05-04 22:34:51 +00:00
tg
e6ace01f12
last parts of Coherent patchkit: O_ACCMODE and termio
2012-05-04 22:18:27 +00:00
tg
fef3808126
more symlink(7) nonexistence support code
2012-05-04 22:05:02 +00:00
tg
401116766b
generalise the skipping sete{u,g}id() case for Coherent, not just BeOS
2012-05-04 21:57:38 +00:00
tg
893ff18d59
fix typo; 10x RT for spotting
2012-05-04 21:48:29 +00:00
tg
7beac6668d
provide for Coherent not having gettimeofday(2), imake style (bad, but this is not for others to use without a second thought anyway)
2012-05-04 21:47:04 +00:00
tg
5488e79d3b
introduce a nosymlink check category (idea by RT); pass it to test.sh; use cp if ln -s fails (me)
2012-05-04 21:42:51 +00:00
tg
b1aa05e36e
do not use $(uname -s || uname) as TARGET_OS if it’s the same as $(uname -n), to weave around many ancient unicēs; idea discussed with RT
2012-05-04 21:37:08 +00:00
tg
000d0eb653
another awk(1) compatibility fix from RT
2012-05-04 21:34:12 +00:00
tg
bc61602efc
RT points out there may be a tab inside the NSIG expansion
2012-05-04 21:33:14 +00:00
tg
cb7dc2b45b
fix copy/paste accident; found by RT
2012-05-04 21:30:06 +00:00
tg
2d0ca10629
patch test.sh to support check.t split into multiple chunks
...
which is apparently needed on Coherent due to OS limits
inspired by a patched test.sh from RT, except I require a
dot before the sequence number for easier globbing, made
the splitting use -S, and the errorlevel is more correct
2012-05-04 21:28:06 +00:00
tg
2d31aca859
more int→bool while trying to let ^D output CR+LF (which shan’t be, oh my…)
2012-05-04 21:15:34 +00:00
tg
5780bc5eb7
new MKSH_NO_CMDLINE_EDITING to disable command line editing in its entirety
...
mainly for the Plan 9 port though it may also help the WinAPI variant,
other porting efforts, as well as a new project I cannot say yet
2012-05-04 20:49:08 +00:00
tg
7c4bf78446
move bi_getn from misc.c to funcs.c and make it static
...
even antique gcc versions will usually inline it now
2012-05-04 20:08:25 +00:00
tg
4cc5fc3e29
avoid C99 constructs even in debugging code
2012-05-04 18:45:03 +00:00
tg
b67de6ba17
add experimental code to use sigprocmask+pause+sigprocmask ipv sigsuspend (and harden j_sigchld handler for that) to improve working on BeOS 5.0 and Coherent UNIX, found by RT
2012-04-27 16:16:23 +00:00
tg
5204e7cc4f
after discussion with ciruZ, switch mksh from NZAT to NZAAT fully
...
to get rid of the bias introduced by making the hash never zero
… he also pointed out a memory (heap) usage optimisation… which
may impact code size a bit though as I’d need to pass an additional
argument on hashtable function calls… or, forgo the benefit of not
having to pointer-align the key in the structure, which can be as
much as 3/7 octets per item, heap storage… OTOH the saved space is
4/8 octets per not-allocated item, possibly some code (use of an
multiply-add opcode), but the function call overhead/cost would
possibly be quite a bit… I guess I’ll have to measure…
2012-04-22 21:50:35 +00:00
tg
48da83288d
work around segfault bug in GNU sed 2.03, spotted by RT on Debian 0.91
2012-04-16 17:49:40 +00:00
tg
ea6b0c60f5
write a bit about pcc, 386BSD, klibc
2012-04-14 19:35:43 +00:00
tg
5eea59ad57
rewrite maketemp() obsoleting tempnam(3) and mkstemp(3) external deps
2012-04-14 16:07:48 +00:00
tg
70e6988d25
factor out rndget() code, for adding users
...
XXX in the future, the entire scheme must be rethinked when we need more
XXX entropy for the hash tables; possibly a cheap add using NZAT and re-
XXX initialise the LCG only on access and when added (so keep NZAT state
XXX separate from LCG state); also, then we will need a more elaborate
XXX scheme, such as adding from environment, editor keypresses and timing
2012-04-14 14:35:13 +00:00
tg
b497da1eb4
add 386BSD, thanks to the unbelievable RT
2012-04-14 14:11:07 +00:00
tg
b49abfac18
genericise MKSH_NO_SIGSETJMP
2012-04-14 14:07:47 +00:00
tg
0e0b379615
sometimes <stdlib.h> doesn’t provide NULL but <stddef.h> does (386BSD)
2012-04-14 14:04:13 +00:00