Commit Graph

611 Commits

Author SHA1 Message Date
tg 59f7279ea2 this is now http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55009 2012-10-21 17:38:22 +00:00
tg 21234f1526 fix detection of penguin flocks 2012-10-14 14:02:10 +00:00
tg d8662eb228 even more hacks to pass “-O666 -fstrict-overflow -Wstrict-overflow=9 -flto=jobserver” with “gcc version 4.8.0 20120930 (experimental) [trunk revision 191865] (Debian 20120930-1)” ☹ plus make the rtchecks mandatory 2012-10-03 17:24:23 +00:00
tg 0d72035990 make char_is_8_bits assertion more anal 2012-09-28 18:57:49 +00:00
tg 4b2371eebf add workaround for musl (define _BSD_SOURCE as well) which is even *more*
ugly than the one for dietlibc (the other one misunderstanding the *real*
meaning of that flag), by $CC divining, until such time as all the Linux
C libraries will honour _ALL_SOURCE (I wish)…
2012-09-27 18:23:43 +00:00
tg 89613d34d4 detect zsh 2.5.02 as found on NeXTstep 3.3; thanks to ft (Frank Terbeck) and chris2 (Christian Neukirchen) 2012-09-18 14:18:59 +00:00
tg 84020897fd allow overriding /etc location (LP#1039713), but don’t do it 2012-08-24 19:09:10 +00:00
tg 1d21782419 add -D_DARWIN_C_SOURCE on OSX; should help bsiegert@’s problem 2012-08-03 18:16:43 +00:00
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