tg
4778a2a62f
lesson learned from http://k1024.org/~iusty/blog/entry/perf-null/ – add -DMKSH_SMALL_BUT_FAST which gives more speed (8/20K less cycles, 5/9K less insns, 1.8/2.4k less branches, 65/275 less branch misses) on Debian/amd64 (klibc-static/eglibc) at cost of 0/2 more page faults and 6K/6K more text size
2012-07-01 15:55:00 +00:00
tg
978d365ab1
-L implies convfds now
2012-07-01 15:51:24 +00:00
tg
c1f821d4e5
(mksh) tighten 32-bit requirements; (lksh) switch to long; allow any bitness
2012-06-28 20:17:39 +00:00
tg
1fa4453946
mh… all I’m gonna hack on upstream today… fix -t for manpage generation and cleanup code snippets; bump vsn; sync clog
2012-06-26 19:33:33 +00:00
tg
967b68e08e
one more thing to implicitly disable (nonsensical anyway) for lksh
2012-06-26 19:15:11 +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
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
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
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
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
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
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
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
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
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
tg
29e4269f33
if the OS does not provide sig_atomic_t and/or ssize_t, you can now define
...
MKSH_TYPEDEF_SIG_ATOMIC_T and MKSH_TYPEDEF_SSIZE_T via CPPFLAGS to the
*correct* definitions (it’s absolutely critical they be correct!)
2012-04-14 14:02:40 +00:00
tg
536bc0463f
make -fwrapv common; at least clang also can do it
2012-04-08 20:02:33 +00:00
tg
5b4d0dbbc5
drop all deprecated code, you have been warned
2012-04-07 11:19:53 +00:00
tg
0af5e1f288
can’t forget LynxOS, although it’s still preliminary…
2012-04-06 23:10:50 +00:00
tg
3d3081115b
if LDSTATIC is not empty (i.e. "-static" or " "), always add “our” sources:
...
• strlcpy
• utf_wcwidth
note strchr/strstr from misc.c are still #ifdef DEBUG only, as they are
not eligible: they’re for const-cleanliness debugging purposes
XXX get rid of multiple occurrences of binary search code, too…
2012-04-06 15:20:42 +00:00
tg
ab1ba32d0b
bring back $LDSTATIC support
2012-04-06 15:03:42 +00:00
tg
30949fe090
use a reverse test for sys_siglist_decl – this one works on Dell UNIX
2012-04-06 13:25:51 +00:00
tg
4a89ae1cd0
drop the need for strcasestr: just uppercase a copy and compare with uppercased
2012-04-06 12:59:28 +00:00
tg
5e12953cfe
bring back -DMKSH_UNEMPLOYED default on BeOS as it’s less usable otherwise
2012-04-06 12:57:53 +00:00
tg
6ca4228e7c
disabling jobs just when there is no ctty isn’t needed, at least for BeOS
...
XXX recheck this with all the others, e.g. NeXTstep
2012-04-01 17:48:24 +00:00
tg
3b2d9322ec
change signal probing order: prefer e.g. SEGV over BUS when same Nr. (BeOS)
2012-04-01 17:17:45 +00:00
tg
c30bf73a56
BeOS has no tty nor uid/gid other than 0, a̲n̲d̲ a broken /bin/sh
2012-04-01 16:55:16 +00:00
tg
412a96d29a
speed up Generating list of signal names (XXX can we wrap this into one compile, anyway?)
2012-04-01 16:40:26 +00:00
tg
607a2af260
found the actual reason… cc -E does syntax check and wrap with whitespace ☹
...
also we can only do NeXTstep 3.3 with -posix, but not 3rdpty egcs or OS 4.2
2012-04-01 04:57:24 +00:00
tg
a3fd4f62e6
• move behavioural changes topmost (locale, zsh emulate sh, solaris xpg)
...
• attempt to handle cpp on nextstep by using -save-temps
• work around another nextstep bug that may or may not hit us, found by RT:
‣ http://lists.gnu.org/archive/html/autoconf/2003-11/msg00094.html
• hide "dirname: command not found", scary even if it might help debugging
2012-04-01 02:35:33 +00:00
tg
16732f7e0f
add NeXTstep, OpenStep notes
2012-03-31 18:33:16 +00:00