Commit Graph

852 Commits

Author SHA1 Message Date
tg
4cbd2c31b9 quieten gcc __CRAZY (-m32) on sparc64 2007-06-05 18:59:54 +00:00
tg
dee38c5be7 sync 2007-06-04 21:55:38 +00:00
tg
1e93f97b8c compile warning-free on SUNpro (regression test suite pass) for MirBSD 2007-06-04 21:33:28 +00:00
tg
6e1bfd6e4b When compiling native MirOS BSD binaries with SUNpro 12 (don't look like a
car only slower, yes this is possible, and the resulting binary passes the
testsuite just fine), the definition of __RCSID() in <sys/cdefs.h> expands
to something with __attribute__((used)), which triggers a warning, because
__attribute__ in general is supported but the used attribute isn't. Thusly
always use our own strings and get rid of the MULTI_RCSID test (introduced
because __RCSID() on Darwin is inferiour).

Maybe we should fix <sys/cdefs.h> too? #ifdef __SUNPRO_C helps here.
2007-06-04 21:27:53 +00:00
tg
0926a6d182 remove the .o files too 2007-06-04 21:15:27 +00:00
tg
33038853cb glibc headers with SUNpro make this test pass incorrectly 2007-06-04 20:26:47 +00:00
tg
76f015e2ab use our includes first 2007-06-04 20:22:08 +00:00
tg
11312995b4 do not compile all files at once any more; collect .o files in $curdir rather 2007-06-04 20:14:34 +00:00
tg
f104e7c9f9 work around “a fucking bug in the fuckin' optimiser” (hi Александр) 2007-06-04 20:00:50 +00:00
tg
5d6b21fda2 it's FALLTHROUGH, 10x moritz@obsd 2007-06-04 19:25:45 +00:00
tg
c55dcc364b we don't need to check for -fno-tree-vrp any longer either 2007-06-03 17:29:29 +00:00
tg
ffa0764e19 first stage of adaption to SUNpro CC (Sun Studio 12, to be released on next
Monday, running under Linuxulator) ☻
2007-05-31 21:25:25 +00:00
tg
60893dd663 by packager request from gecko2, add option -Q which makes the
post-build a little bit more quiet
2007-05-28 13:47:09 +00:00
tg
c54a614574 useful alias for embedded ones, speedup for all 2007-05-25 13:51:42 +00:00
tg
2beb60ebf3 for R30, don't check for confstr() declaration any more
it was #if solaris'd in R28, and the system I have access
on does declare it now (still Solaris 8)

this can be put back if anyone complains, of course.
2007-05-24 23:07:19 +00:00
tg
a3ab909ff6 bump vsn, we had a regression… 2007-05-24 19:50:38 +00:00
tg
15515cfe06 fix Message-ID: <e3fded850705240816s50544d04u5c87edb905f1c123@mail.gmail.com>
(maybe) by only emitting the >*< if we're at EOL
2007-05-24 19:15:46 +00:00
tg
49760de778 fix detection of f̲u̲n̲c̲t̲i̲o̲n̲ prototypes which, in contrast to d̲a̲t̲a̲ prototypes,
don't give an error if they're missing
2007-05-24 09:22:58 +00:00
tg
63623bb479 we don't have -d in mksh R30β any more 2007-05-24 09:06:31 +00:00
tg
8c986282ce optimise 2007-05-22 21:13:56 +00:00
tg
fec876cdcf fix Message-ID: <e3fded850705221323w1442f15cr4375a5590acf8088@mail.gmail.com>
(by dramsey again, you're DA MAN) by replicating some of the x_redraw() logic

Note that this is correct, a construct like the full-fledged
| x_e_putc2((xep > xlp) ? ((xbp > xbuf) ? '*' : '>') : (xbp > xbuf) ? '<' : ' ');
is not needed since if (xep > xlp) && (xbp > xbuf) – i.e. in the '*' case –
x_redraw() will be called anyway and because (xx_cols - 2 - x_col) == 0 the
code won't be triggered.
2007-05-22 21:01:38 +00:00
tg
9b86b32dc8 ah, of course, bump the date 2007-05-22 19:31:01 +00:00
tg
d8b210fd16 dramsey bug #4: regression introduced in 1004651F21443013C37 (fix for bug #3)
cf. Message-ID: <e3fded850705211623n20d2c695ke7b41d75ac439a6c@mail.gmail.com>

this one was harder to track down, additional variables coming into the play…
2007-05-22 19:27:05 +00:00
tg
f5d4e21aa2 • fix the third dramsey scrolling bug for both ^D at BOL and ^W at EOL
(I hope)
• fix another one I found: after ^D'ing, insert at BOL, the > is displayed
  one character too late
2007-05-21 19:25:32 +00:00
tg
5323f6023b unify the move-backwards redrawing bug fixes
cf. Message-ID: <Pine.BSM.4.64L.0705211156060.16459@odem.66h.42h.de>
tested to not slow down _even_ more a 75 MHz sparc (neko.haemoglobin.org)
thanks to dramsey again for testing
2007-05-21 12:24:44 +00:00
tg
252861b156 fix the latest appearance of the dramsey backwards movement bug, cf.
Message-ID: <e3fded850705200935h6ac2c9ebgbc7a9b10ac034a49@mail.gmail.com>
and Message-ID: <Pine.BSM.4.64L.0705201659500.8619@odem.66h.42h.de>
2007-05-20 17:53:13 +00:00
tg
9e44be4713 oops, can't use single quotes inside of singly quoted string, of course… 2007-05-19 16:35:02 +00:00
tg
9e21d616bd • whence -p can take closing fd 2 instead of pointing it to /dev/null
• hostname and id should too, besides it's mostly for the shell error
  message of not finding them anyway…
• shorten
2007-05-19 16:33:10 +00:00
tg
fcd6e4f07a bump version 2007-05-13 19:18:26 +00:00
tg
a84655e3e0 fix Coverity CID #8, #9
it's wrong to use strchr(s, 0) to look for the NUL byte, because in some
environments it apparently might return NULL

use new macro strnul = s+strlen(s) instead (not side-effect safe tho)
2007-05-13 19:14:05 +00:00
tg
655b50a7d1 Fix for Coverity CID#10: out-of-bounds array access 2007-05-13 19:00:30 +00:00
tg
a3e012c69b dead code removal 2007-05-13 18:49:00 +00:00
tg
e392983af7 Possible fix for Coverity CID#7:
convert options() prototype to unsigned (size_t, in fact), and make an
explicitly casted (size_t)-1 the error return code, modelled after what
is often used in Unix libraries
2007-05-13 18:33:29 +00:00
tg
3daaf229ca Fix for Coverity CID #6 (null pointer dereference in error path) 2007-05-13 18:15:25 +00:00
tg
96283ed453 Workaround for Coverity CID#1: the Prevent parser didn't recognise there
were multiple possible values for c inside the code.

Rewrite code in question to use if instead of switch; optimise while here.
2007-05-13 18:07:22 +00:00
tg
0989f7da67 Fix for Coverity CID#2: false bug, but still a problem.
Analysis:
internal_errorf(int, fmt, ...) was only a __dead function if the int argument
was non-0, which the Prevent probably was unable to follow. Change all uses of
internal_errorf(0, fmt, ...) to internal_warningf(fmt, ...); change the pro-
totype of internal_errorf() to internal_errorf(fmt, ...) and all remaining
uses remove the non-0 int argument; add __dead to internal_errorf() proto;
flesh out guts of internal_errorf() and internal_warningf() into a new local
function for optimisation purposes.

Some whitespace cleanup and dead code removal (return after internal_errorf(1))
2007-05-13 17:51:24 +00:00
tg
d2d035355f a certain size optimisation broke the utf8bom-3 regression test if
mksh was configured to have utf-8 mode “always on” (because it's
really only always on for interactive shells); setting it to really
always on would break the other half of this regression test, so
do the optimisation only if MKSH_SMALL
2007-05-10 19:22:11 +00:00
tg
384032b729 fix the “dramsey horizontal scrolling bug” – time for you to find another ☺ 2007-05-10 19:08:48 +00:00
tg
d89613399b const 2007-05-10 18:58:31 +00:00
tg
25bb4815d2 remove a redundant function 2007-05-10 18:46:38 +00:00
tg
5f61b50a90 we only require strcasestr if setlocale() is used at the moment 2007-05-02 20:02:07 +00:00
tg
9e708d91b8 mksh R30 will no longer build a statically linked shell by default;
does not try, nor provide any means; user has to use LDFLAGS instead.
2007-04-30 19:50:09 +00:00
tg
8ca51f5ff3 retain Build.sh path for test.sh (e.g. if /bin/ed != /usr/xpg4/bin/ed – on
Solaris some tools are weird, I recommend to prefix /usr/xpg4/bin to $PATH
even for dot.mkshrc because /usr/bin/id sucks, /usr/xpg4/bin/id works…)
2007-04-30 19:18:37 +00:00
tg
c9991d996f • change version number to “R29 and up” so
that I don't have to bump it every time…
• amend description of emacs-mode “redraw”
2007-04-30 19:16:30 +00:00
tg
8d1ede2697 do not “-fwhole-program --combine” since it at least breaks FORTIFY_SOURCE
on SuSE and causes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=408850
so I'll assume it's a gcc bug

thanks to Pascal “loki” Bleser (yaloki), darix, Martin Zobel-Helas, Steve
Langasek (vorlon) for tracking this bug down in two different instances
2007-04-30 19:12:18 +00:00
tg
c0e5c09351 optimisation: #ifdef MKSH_ASSUME_UTF8, don't bother to “Flag(FUTFHACK) = 1;” on UTF-8 BOM encounter, it's always on (unless manually set to off) – saves a few bytes, I guess 2007-04-26 11:58:53 +00:00
tg
7a775ab0cf some wording and #if 0 cleanup 2007-04-24 10:44:58 +00:00
tg
1a0b51b697 • arc4random, arc4random_push: use our own protos to check
XXX u_int32_t is not ISO C99, but seems to work well enough
  XXX if it fails anywhere, we'll see in the build logs
  XXX apple doesn't have the standard uint32_t and API doesn't specify it
• sys_siglist_defn: rename to sys_siglist_decl as we're really checking
  for the declaration in the headers; change wording to “check if … does
  not need to be declared” since we don't need to declare if we don't use
• scan for arc4random, arc4random_push, confstr declarations too
• sh.h: confstr declaration is no longer #ifdef __sun__; sort
2007-04-24 10:42:02 +00:00
tg
2cf5695f69 • mention HP-UX, AIX success
• mention Darwin failure in R29c, fix in -current
• also clean up core dump file
• on HP-UX 11i v2, <stdint.h> requires <stdarg.h> because it pulls in
  a <wchar.h> generated from gcc's fixincludes… dunno, but it works…
• HP-UX 11i v2 on ia64 only works with -mlp64; the default seems to be
  -milp32 which generates SIGBUS due to misalignment (due to optimisation?)

-> in theory, HP-UX works on both PA-RISC and IA64 in R29c
-> R29c doesn't contain support for AIX or Mac OSX though…
2007-04-23 22:33:20 +00:00
tg
e35eed3687 mksh R29c was indeed broken on HFS+ filesystems thanks to Darwin/Mac OSX
brain-deadness
2007-04-23 21:46:12 +00:00