Commit Graph

567 Commits

Author SHA1 Message Date
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
tg ac18ec3752 one more case of cpp(1) wanting C syntax on NeXTstep 2012-03-31 17:42:58 +00:00
tg 307224f143 Use “proper C code” for determining the compiler type even though we use
only cpp for this: NeXTstep things otherwise:
] conftest.c:42: illegal external declaration, missing ;' after `gcc'
| NeXT Computer, Inc. version cc-437.2.6, gcc version 2.5.8
| NeXT DevKit-based CPP 3.1
| GNU Objective-C version 2.5.8 (80386, BSD syntax) compiled by GNU C version 2.5.8.
2012-03-31 17:37:03 +00:00
tg 4e8c5c078d RT suggests to drop sys_siglist and _sys_siglist on *all* SCO products, for now, and whitelist those that do need it (no strsignal) 2012-03-30 10:24:45 +00:00
tg 9cac4c92f6 RT wants to make the awk used configurable, apparently OpenStep 4.2 has a broken default one 2012-03-30 09:27:19 +00:00
tg cf75e7b6ce couple of minor/cosmetic fixes from RT’s compile farm:
• promote SCO OpenServer and UnixWare to !oswarn
• omit trying -O2/-O on OpenServer 5 and USL C
• cast mksh_ari_t to int, mksh_uari_t to unsigned int for printf
• skip ulimit-1 on syllable (which is still too broken)
• write ((mksh_ari_t)-2147483648) ipv UB ((mksh_ari_t)1 << 31)
  and add a comment that that is actually meant
• rewrite functions returning !void ending in NOTREACHED
  so they’ve got a jump target returning an error at the
  end, to aid older compilers and just to be safe
• cast struct stat.st_size to off_t or size_t explicitly when needed
• shorten struct env by two bytes and an alignment, at least

also, optimise control flow and fix more paren matching cases
2012-03-29 19:23:01 +00:00
tg 25745883a9 move USL C detection to after GCC detection, apparently the latter
masquerades as the former on SCO systems
2012-03-28 11:15:04 +00:00
tg df8881b9c8 fix embarrassing typo (and I thought I had tested them all), 10x RT 2012-03-28 11:14:20 +00:00
tg 914c1d816f drop call to "custom", SCO says to use it to identify system,
but RT says it opens a GUI window, and we obviously cannot have this
2012-03-28 11:13:45 +00:00
tg 6dd03ddfad pass the version to avoid stale Makefile.inc files 2012-03-27 23:13:42 +00:00
tg ed28f9fd24 unknown OS or compiler? be loud! 2012-03-27 23:01:51 +00:00
tg 340cd95cf0 #undef flock (LP: #912691) 2012-03-27 22:41:17 +00:00
tg 95a2c63096 • implement fcntl(2)-based advisory locking as an alternative iff flock(2)
is not found, from a suggestion by RT (LP: #912691)
• try harder (in a loop) to acquire a file lock if the locking mechanism
  documents EINTR is a possibility (fcntl always, flock on Linux not .Ox)
• use -std=c99 not -std=gnu99 if it must be at all
2012-03-27 22:36:53 +00:00
tg e3b9f14d88 You have this ↓ guy a lot to thank for.
00:45 -!- variable [root@freebsd/developer/variable] has joined #!/bin/mksh

• +b *!*root@*, +b $a:root, +b $r:root on one more channel
• certain checks to prevent:
00:47 < variable> wjcw: sh.h:308: error: conflicting types for 'getrusage'
01:19 < variable> oh
01:19 < variable> I needed to run Build.sh
2012-03-27 21:23:52 +00:00
tg a901abc470 update on SCO OpenServer, SCO UnixWare and USL C, from RT 2012-03-27 21:01:55 +00:00
tg 5f450c97bb be more loud in Build.sh to aid me 2012-03-26 20:14:58 +00:00
tg 36199d66ab RT confirmed we need this workaround on SCO OpenServer 6.0 2012-03-26 19:54:54 +00:00
tg 258a1fc4c4 BeOS has quite some issues by now, several minor combined, no major 2012-03-26 19:48:06 +00:00
tg 82ebd9320b distinguish between Minix 3 and Ninix 3 2012-03-03 21:30:13 +00:00
tg 3e0abff926 -DMKSH_SMALL no longer implies -fno-inline 2012-03-03 19:27:07 +00:00
tg 9f3299df4d fix regression in mirtoconf output introduced in cid 1004EFE6D783E94B328 2012-02-17 13:59:56 +00:00
tg 753891419d 10:41⎜«RT|Chatzilla:#!/bin/mksh» mira|AO: 12:08 < RT|AO> a bit fun compiling mksh in SkyOS 5.0.6753 ;-)
http://pastebin.com/GHPm1B7B
10:41⎜<mira|AO:#!/bin/mksh> .oO(wtf is SkyOS?)
10:42⎜<mira|AO:#!/bin/mksh> shf.c:453: warning: format '%zd' expects type 'signed size_t', but argument 4
     ⎜    has type 'ssize_t'
10:42⎜<mira|AO:#!/bin/mksh> lol…
10:42⎜<mira|AO:#!/bin/mksh> I’ve seen (and fixed!) that in dietlibc too, recently
10:43⎜«RT|Chatzilla:#!/bin/mksh» http://en.wikipedia.org/wiki/SkyOS
10:43⎜<mira|AO:#!/bin/mksh> shell-init: error retrieving current directory: getcwd: cannot access parent
     ⎜    directories: Not a character device ←←← huh?!?!?!
10:46⎜<mira|AO:#!/bin/mksh> looks like their POSIX layer has got issues (other than this shell-init
     ⎜    thing, umask and checks for existence upon open() are broken)
10:46⎜<mira|AO:#!/bin/mksh> but mksh is usable, I'd say
10:46⎜<mira|AO:#!/bin/mksh> “mostly”
10:46⎜<mira|AO:#!/bin/mksh> let me commit that
10:46⎜«RT|Chatzilla:#!/bin/mksh» funny posix layer bug, just like "unexpected exit status 1 (signal 1),
     ⎜    expected 1" signal bug in BeOS5
2012-02-17 09:49:45 +00:00
tg 801fdb10ca DTRT when commenting out the only instruction in an if block; spotted by RT 2012-01-04 08:56:27 +00:00
tg d7d41d9210 disable tcc’s bounds checker for now; fixes SIGSEGV-on-start on i386 (Total failed: 0; Total passed: 424) 2012-01-03 16:14:39 +00:00
tg 7ff96c3086 fix gccism; found during testing with tcc 2012-01-03 16:03:22 +00:00
tg 34036ec32e MSYS implies -DMKSH_ASSUME_UTF8=0 and thus can skip the test that’d fail 2012-01-03 01:40:15 +00:00
tg e1fa966570 if tcfn=a.exe pass mksh.exe, not mksh, to check.pl
also spotted by RT
2012-01-03 01:30:16 +00:00
tg 2578c66b61 move linkage check (which uses sh.h INCLUDES_ONLY) to when all of its
prerequisites are actually fulfilled, i.e. evrn further down than with
the last commit doing this, and move some prerequisites of stuff that
has wandered outside the !INCLUDES_ONLY block with the compile-time
assert changes to the outside, too

fixes FTBFS on MSYS which has neither <stdint.h> nor uint32_t
reported by RT
2012-01-03 00:58:09 +00:00
tg 7564594bb8 bunch of warning fixes 2011-12-31 02:54:15 +00:00
tg 7ec1ae3771 followup for cid 1004EE408E1382C1752 and 1004EE40DDD498FBB0D:
do a mirtoconf run-time check (ugh) to see whether the CPU designers
smoked/were brain-dead or if we don’t actually need the manual check
2011-12-31 02:04:18 +00:00
tg 5dbff1d56c clang doesn’t decide whether -version or --version is to be used, grml… 2011-12-31 00:31:25 +00:00
tg 68e8b5ab7c disable looking for C99 support flag in compilers (and GCC extensions)
laffer1 just pointed me to n1570 and I must say I am shocked but not surprised
2011-12-18 02:20:09 +00:00
tg ee73f691f0 clearer messages 2011-12-10 14:16:09 +00:00
tg 63b9d60b31 MKSH_DISABLE_DEPRECATED needs testsuite handling 2011-12-08 22:19:04 +00:00
tg 9b04bd65b7 rework Perl interpreter finding logic; *buntu/dietlibc-arm{el,hf} are broken 2011-12-08 22:16:42 +00:00
tg 6e010a59fb MFC recent changes to R40-stable, validate it, fix a pedantic warning 2011-12-04 19:59:33 +00:00
tg b12d31ccca improve installation instructions 2011-12-04 19:38:36 +00:00