Commit Graph

504 Commits

Author SHA1 Message Date
tg cf6109d912 detect ACK, handle Minix better 2009-04-03 09:42:37 +00:00
tg 56c6e384e6 (experimental) implement getrusage via times if not found 2009-04-03 09:39:07 +00:00
tg d6f6834d0d add some CPPFLAGS only if setmode.c 2009-03-29 17:50:45 +00:00
tg 0d254e4088 make buildable again after memory allocator change
(why didn’t anybody report this?)
2009-03-23 08:54:12 +00:00
tg ca539f08f0 remove espie's double-linked-list based allocator and write a
similarily simple one from scratch, which however performs
better than espie's with AFREE_DEBUG enabled which took away
the benefit of the double-linked-list approach

all of (core) mksh is now MirOS licenced
2009-03-22 16:55:38 +00:00
tg 6aa594849a with Build.sh -combine, only do it if it is usable (gcc only too)
XXX do other compilers support such thing?

sync clog
2008-12-31 16:09:51 +00:00
tg dc79b9b118 new option -combine (complementary to -llvm):
compile all source files at once using -fwhole-program --combine,
similarily to how it used to be done in older mksh versions, except
that the flags are now hardcoded; tested with llvm-gcc4.2 from MirPorts
2008-12-20 20:39:05 +00:00
tg 03acb8ce51 this was NOT intended to be committed; my sincere apologies 2008-11-13 00:36:07 +00:00
tg d099b00b53 leave at least a working tree, with zero-penalty -DAALLOC_NO_COOKIES
XXX cookies are still broken?

cost for aalloc.c: data -= (4, 0, 4, 0); text += (1665, ?, 2115, 2217)
2008-11-12 07:36:19 +00:00
tg 6a4afdde05 add the workaround for Debian #492377 into the main mirtoconf function,
because Hanno Böck has something similar triggered on Gentoo as well
2008-11-11 23:20:08 +00:00
tg f4f4f64492 if ‘-DMKSH_ASSUME_UTF8’, default HAVE_SETLOCALE_CTYPE to 0 since it’s
unused then anyway, to save two followup mirtoconf checks and headers
2008-11-11 21:52:51 +00:00
tg 6c02c37e52 add new Build.sh option -llvm for bytecode compilation and link-time
intra-module optimisation
2008-11-10 20:25:04 +00:00
tg 446e019c07 the QNX /bin/ed problem is worse than thought; use a new mechanism,
because categories in check.t are OR’d:
• no-stderr-ed disables the newish-ed tests (tried using testcase)
• stdout-ed enables the oldish-ed tests (variable, if the above
  testcase succeeds, it’s added, but QNX overrides the variable)
2008-11-08 17:36:35 +00:00
tg 2697deb55c say hello to QNX, sync clog 2008-11-02 23:06:36 +00:00
tg 89e96b6c86 experimental support for <strings.h>
cf. http://www.opengroup.org/onlinepubs/009695399/basedefs/strings.h.html
QNX seems to bury some functions in there
2008-11-02 22:29:36 +00:00
tg e561d9adfe say hello to nwcc, slightly b0rken though 2008-10-30 17:11:14 +00:00
tg 88d7b7d08b • rewrite code to no longer use statements-as-expressions
• optimise a little
• Build.sh: remove HAVE_EXPSTMT test
• Build.sh, */Makefile: sort tests, regenerate
• mksh.hts: sync clog
2008-10-28 14:32:43 +00:00
ahoka d5415fb04f Add BeOS/Haiku platform.
Compiles OK on Haiku pre-alpha as of 2008 October,
but currently hangs for unknown reason (could be OS bug).
2008-10-26 21:57:47 +00:00
ahoka 776cc76ccb Add check for the nice(3) system call.
It may be not implemented on some plaforms, though it's usually present.

Required to compile on Haiku as of 2008 October.
2008-10-26 21:51:27 +00:00
tg 00cbdc2d2e 12:51⎜«replaced:#!/bin/mksh» mirabilos: btw haiku port?
12:51⎜<mirabilos:#!/bin/mksh> dunno, I run no haiku
12:51⎜<mirabilos:#!/bin/mksh> I don't know anyone who does, either
12:51⎜«replaced:#!/bin/mksh» only caveat it creates nor .aout. nor a.exe by deafult
12:52⎜<mirabilos:#!/bin/mksh> so I focus on more widely-used things such as DEC ULTRIX 4.5 and Digital UNIX
     ⎜    2.0 ;)
12:52⎜«replaced:#!/bin/mksh» the problem was
12:52⎜«replaced:#!/bin/mksh» it creates src when you give hime src.c
12:53⎜«replaced:#!/bin/mksh» and it confused your Build.sh
12:54⎜<mirabilos:#!/bin/mksh> which compiler does it use?
12:55⎜«replaced:#!/bin/mksh» gcc 2.95

this might(!) be enough to support this weirdity. untested.

12:57⎜«replaced:#!/bin/mksh» can you commit that?
12:57⎜«replaced:#!/bin/mksh» i will try it
12:57⎜«replaced:#!/bin/mksh» but a bit later
2008-10-25 12:58:41 +00:00
tg 9fca87b9c3 replace some cat with echo for speed 2008-10-24 21:35:21 +00:00
tg 19b711692f fix mis-reporting gcc on OSF/1 V5.1 as dec due to the
rule we need to use to identify dec c on OSF/1 V2.0
2008-10-24 20:01:42 +00:00
tg 099cc33236 ucode is very similar to dec c; improve version reporting 2008-10-24 19:59:54 +00:00
tg e2b13ffeae say hello to mksh on OSF/1 V2.0
the trick is to use static linking…
2008-10-24 19:55:35 +00:00
tg a82a5e57f7 /bin/sh on DEC OSF/1 V2.0 (Digital UNIX) is a true Bourne Shell, so it sucks 2008-10-24 19:55:06 +00:00
tg 0c2de1902c • change mksh to only then behave more POSuXish when called as /bin/sh or
“-sh” if -DMKSH_BINSHREDUCED was passed during compilation, for example
  for Debian, but d̲e̲f̲i̲n̲i̲t̲i̲v̲e̲l̲y̲ n̲̲o̲̲t̲̲ for MirBSD™
• split up regression test to force this behaviour
• remove the gunk from our MirBSD™ startup scripts again
• mention arc4random.c changes on website, sync clog, warn packagers
2008-10-20 19:29:25 +00:00
tg ea72bd1b76 improve version reporting on modern AIX/xlC
XXX both cc -qversion and ld -V give errors on AIX 5.2 / xlC V7.0…
2008-10-10 21:57:16 +00:00
tg 25a8d9095d AIX has no UTF-8 locale:
aixuser@pscp520v5:~/bcc $ locale -a
C
POSIX
en_US
en_US.8859-15
en_US.ISO8859-1
aixuser@pscp520v5:~/bcc $ uname -a
AIX pscp520v5 3 5 00C56E7D4C00
2008-10-10 21:36:04 +00:00
tg 78a49e8faf miwi noticed that <libutil.h> on ViehBSE has a prerequisite header, but
didn’t tell me which one (T H A N K S !)… since I have no FleaBSD shell
account, I tried on DragonFly and MidnightBSD, which both are content
when adding <sys/types.h> first… let’s hope this fixes all 386BSD derivates
2008-10-04 19:13:22 +00:00
tg 8f5eda8859 remove the problematic ‘-q’ option, which causes trouble under unclear
circumstances, like some FreeBSD 8 (beta) incarnations (yet not others)
2008-09-30 17:34:25 +00:00
tg 024f0e161d heirloom-sh and Solaris /bin/sh caught use of $NROFF before definition
10x Elias Pipping for noticing
2008-07-21 21:00:25 +00:00
tg a125045432 ptrdiff_t needs <stddef.h> 2008-07-18 11:42:52 +00:00
tg cae7468fe6 (possible) warning cleanup 2008-07-18 11:34:20 +00:00
tg eff47cf33b this isn't needed, from pdksh 2008-07-17 15:17:46 +00:00
tg 79de8c1eb0 add some cppflags from pdksh 2008-07-17 14:50:24 +00:00
tg f894288204 BSDi BSD/OS 3.1’s /bin/ksh (PD KSH v5.2.8 96/08/19) is horridly broken and
removes the \n part of a “\\\n” sequence, but not the backslash ⇒ we can’t
use line continuation in a here document

someone might want to add this to *(autoconf) Portable Shell::
2008-07-15 23:44:51 +00:00
tg 31145570ef with dietlibc, <ulimit.h> requires <sys/types.h>, and as we unconditionally
include the latter anyway, just add it as a scan time requirement header

from Debian package
2008-07-15 20:54:47 +00:00
tg 5d25a177a2 better 2008-07-14 15:06:02 +00:00
tg 66e1416bb4 • handle perls without $^O better
• allow user to specify $PERL environment variable containing path to the
  perl5 interpreter to use, for Elias Pipping
2008-07-14 14:59:20 +00:00
tg e171d0fc11 protect test.sh some from being called by !mksh, as homsn did… 2008-07-14 14:40:47 +00:00
tg a9f219dd60 if MKSH_AFREE_DEBUG is defined, guard against wrong frees 2008-07-13 16:43:55 +00:00
tg 1619fa2538 • Build.sh, check.t: bring back the 'smksh' check category, which was
missing for a while yet its disappearance was unnoticed because…
• distrib/special/mksh/Makefile: sync check categories, this was missed
• mksh.hts: sync clog
2008-07-11 19:51:23 +00:00
tg a36a925ea6 IRIX also does not have any UTF-8 locale at all
confirmed by Elias Pipping, 10x
2008-07-11 18:31:10 +00:00
tg 7c239cd369 no UTF-8 locales on OSF/1 V5.1B, either 2008-07-10 18:55:43 +00:00
tg 7530a147e6 let’s find sizer on OSF/1 if it’s not in the PATH 2008-07-10 18:49:22 +00:00
tg b8980a59c1 gcc -v also accepts a file argument, and 'diet gcc -v' croaks, so… 2008-07-08 21:14:42 +00:00
tg 1f0e071c6d dump the perl $^O string in the logs… all Debian GNU/kFreeBSD developers
I can ping right now “need to refresh their keys on io/asdfasdf” or have
their machines unreachable… and I lost my VM to fsck recently (remember)
2008-07-08 21:05:01 +00:00
tg 077dbf2dd4 fix HP aCC compiler version identification 2008-07-06 23:19:31 +00:00
tg 667f309387 support arc4random.c in build but not src dir, too 2008-06-29 19:46:56 +00:00
tg 941d228f99 some basic LLVM+clang (with “ccc” driver example) support 2008-06-29 18:18:56 +00:00
tg d20bb52049 remove llvm-clang artefacts in more places 2008-06-29 18:08:55 +00:00
tg edb83bf872 remove a.out.s and a.out.bc (llvm-clang fallout) too 2008-06-28 23:00:43 +00:00
tg 1863471854 improve Mac OSX version reporting 2008-06-22 20:51:31 +00:00
tg 9fabfb278f SUNw,cc is one of the compilers whose version reporting works better when
compiling a demo programme at the same time
2008-06-21 19:38:41 +00:00
tg 5d73013c02 remove check_category “pdksh”, it starts to make trouble and was never
taken seriously anyway, just historic ballast
2008-06-21 19:20:15 +00:00
tg f7d5a16363 What is valid for Build.sh should be valid for test.sh too.
In this case: reset the locale to “C” at start.
Otherwise, perl/OpenBSD fails in an UTF-8 environment, just
because OpenBSD 4.3/zaurus still has no locales in 2008.
2008-05-20 18:47:06 +00:00
tg b41a72ac2e add new builtin “realpath” calling realpath(3) on its argument, skipping
over “--” for compatibility to Debian realpath(1) and possibly busybox’

“sounds handy” replaced@TNF
2008-05-17 18:27:57 +00:00
tg b40ba2c8d1 beauty error: clear LDFLAGS and LIBS while using -c 2008-05-17 18:19:11 +00:00
tg 67b4dc8731 * default to no setlocale for a couple more platforms
* default to UTF-8 on Plan 9
2008-05-13 00:08:12 +00:00
tg 512bee8c32 • GNU/Cygwin has, according to G**gle, only stubbed locale support, like
OpenBSD
• update testsuite results and clog, again
2008-05-11 14:47:04 +00:00
tg f6b7a09146 • on OpenBSD, default to HAVE_SETLOCALE_CTYPE=0… I wonder if that’ll ever
change – this might affect other OSes too in time for R34
• one of the regression tests had an unexpected failure if running as root
• www: sync clog; log newer mksh built on newer OpenBSD works fine
2008-05-10 03:16:07 +00:00
tg 06ff8540a0 remove more dead mirtoconf code 2008-05-04 01:59:46 +00:00
tg c5db7903dd if we don't have setlocale(), just look at the env vars ourselves 2008-05-04 01:58:15 +00:00
tg 604ec0ff6c remove dead code and ifdefs, speed up configuring 2008-05-04 01:51:31 +00:00
tg e27ae086d2 set the "C" locale during runs… otherwise, some OSes’ tr(1) or so might
act strange… 10x Adam “replaced” Hoka for helping to find this
00:51⎜<replaced_> it needs -A
00:52⎜<mirabilos> heh. locale?
00:52⎜<replaced_>            -A             Translates on a byte-by-byte basis. When this flag
00:52⎜<replaced_>                           is specified tr does not support extended
00:52⎜<replaced_>                           characters.
00:52⎜<replaced_> LC_CTYPE=en_US.utf8
00:52⎜<mirabilos> hmmm
00:52⎜<mirabilos> but that is weird too
00:52⎜<mirabilos> I don't see why it shouldn't work
00:52⎜<replaced_> yeah, it should act the same
00:53⎜<mirabilos> try this please:
00:53⎜<mirabilos> without -A
00:53⎜<mirabilos> echo sys/param.h | env LC_ALL=C /bin/tr -c
     ⎜    qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM0123456789
     ⎜    ______________________________________________________________
00:53⎜<replaced_> this works of course
2008-05-04 00:55:18 +00:00
tg d6f3f726a6 clean up unused defines 2008-04-20 02:15:12 +00:00
tg 9b62cf15bf • more unsigned → unsigned int
• more int → bool
• more regression tests: check if the utf8-hack flag is really disabled
  at non-interactive startup, enabled at interactive startup, if the
  current locale is a UTF-8 one
• make the mksh-local multibyte handling functions globally accessible,
  change their names, syntax and semantics a little (XXX more work needed)
• optimise
• utf_wctomb: src → dst, as we’re writing to that char array (pasto?)
• edit.c:x_e_getmbc(): if the second byte of a 2- or 3-byte multibyte
  sequence is invalid utf-8, ungetc it (not possible for the 3rd byte yet)
• edit.c:x_zotc3(): easier (and faster) handling of UTF-8
• implement, document and test for base-1 numbers: they just get the
  ASCII (8-bit) or Unicode (UTF-8) value of the octet(s) after the ‘1#’,
  or do the same as print \x## or \u#### (depending on the utf8-hack flag),
  plus support the PUA assignment of EF80‥EFFF for the MirBSD encoding “hack”
  (print doesn’t, as it has \x## and \u#### to distinguish, but we cannot use
  base-0 numbers which I had planned to use for raw octets first, as they are
  used internally): http://thread.gmane.org/gmane.os.miros.general/7938
• as an application example, add a hexdumper to the regression tests ☺
2008-04-19 22:15:06 +00:00
tg acc2e9a67a • Ultrix doesn’t define MAP_FAILED either
• on Ultrix, mmap() returns a caddr_t instead of a void*, so cast
2008-04-02 16:55:06 +00:00
tg e8d61a1d99 • unify ksh_dup2() usage, use bool where appropriate
• apply diff from mirbsdksh-1.11:
  #ifdef DUP2_BROKEN
  /* Ultrix systems like to preserve the close-on-exec flag */
  ‣ XXX we do #ifdef __ultrix here (imake-style) instead of mirtoconfing it
    (but does anyone know of any other OS with the same problem? plus we’d
    see it as we now know the symptoms)
• remove ultrix Build.hs warn=' but might work…' in the hope it DOES
2008-04-01 20:40:22 +00:00
tg 47a7d246ca easier way to fix it, WFM on BSD/OS 2008-04-01 17:25:37 +00:00
tg 5198f4c358 work around problems with old perl 2008-04-01 17:22:54 +00:00
tg 18f38ad75a abort if perl is not working in test.sh 2008-04-01 17:14:31 +00:00
tg 448496a74e use cat with here document instead of a couple of echos for
generation of test.sh (which grew...)
2008-04-01 17:13:49 +00:00
tg 506326f051 yaloki just mentioned IBM VisualAge, and I found out that it’s
not, as I thought, their Wintel compiler but AIX’s xlC…

no breakage, just redundancy.
2008-03-28 22:56:15 +00:00
tg 0a35cabb31 more detailled gcc output, idea from Elias Pipping 2008-03-28 14:04:23 +00:00
tg 9a7ea00e9c don’t use #error: MIPSpro only warns, but doesn’t abort compilation… 2008-03-28 13:55:11 +00:00
tg aacc0b2179 • Build.sh: be a little more explicit about the unknown compilers
• Build.sh: add another one
• */Makefile: sync CPPFLAGS
2008-03-27 22:44:17 +00:00
tg 180883417e tentatively commit support for
• detecting a lot more compilers (stolen from CMake, admittedly, as they
  were the first coming up at G**gle with usable #ifdefs)
• handling MIPSpro
• more system info on IRIX
2008-03-27 22:17:01 +00:00
tg 351104715e ignore failure to define MAP_FILE 2008-03-27 17:59:28 +00:00
tg dbc159a491 From: Elias Pipping <elias@pipping.org>
| >Maybe add <sys/types.h> as first line? I could imagine that.
|
| That did the trick indeed (that's where dev_t is defined).
2008-03-27 17:55:31 +00:00
tg 5ff5b4b03f Elias Pipping reports success of mksh R33 on IRIX64 mips-sgi-irix6.5 gcc3.4.1 2008-03-27 13:08:37 +00:00
tg def9c172df • Add support for Ultrix 4.5 and ucode cc (?)
‣ I/O redirection seems broken:
    $ (date; date >/dev/null; date) | wc -l
    1 (expected: 2)
  ‣ other than that: working fine
  ‣ -YBSD (default) and -YSYSTEM_FIVE don’t work, just -YPOSIX, somehow
• Fix $(…) to `…` for OSF/1 V2.0 /bin/sh
  ‣ this compiler is FUBAR though:
	$ cat >t.c
	main() { return (foo()); }
	$ cc t.c
	ld:
	Unresolved :
	foo
	$ echo $?
	0
	$ ls -l a.out
	-rwxr-xr-x   1 mirbsd   users      10835 Jul 21 17:12 a.out
  ‣ it seems to have ucode, but man is not installed
• new mirtoconf check: mkstemp(3)
• if !HAVE_MKSTEMP (Ultrix), use tempnam(3)
• only use printf(1) if it exists (it doesn’t on Ultrix)
• a few more signals
• add S_ISLNK if the OS doesn’t define it
• add strcasecmp(3) proto for Ultrix (it _is_ in <portability.h>, but
  only for -YBSD I think)
• fgrep(1) on Ultrix doesn’t do “-e ① -e ②”

10x DEChengst:#UnixNL for giving access
2008-03-25 21:34:45 +00:00
tg b8b52a7c92 set MI default values after MD default values 2008-03-25 20:25:27 +00:00
tg 38a53603d3 support gcc 1.42: it only can __attribute__((aligned (1))) but no others,
it can’t do -Werror, that’s why it mis-detects attribute support.
ignore the warnings (unused variables, uninitialised values, control flow)
as I checked them and they are not valid. gcc 1.42 (BSDi modified) compiles
a very fine mksh
2008-03-23 21:53:36 +00:00
tg 26ba2854a2 support BSD/OS 3.1 with gcc2, 10x replaced@tnf
except MAP_FAILED not being defined, no issues
2008-03-23 20:55:18 +00:00
tg df9b1b9b84 choose perl5 over perl, which can be perl 4.0… 2008-03-23 20:21:24 +00:00
tg 444214f5c2 fix Rebuild.sh generation 2008-03-23 20:19:26 +00:00
tg 5f22a5cd7c much improve the Syllable situation – now en par with Plan 9 2008-03-14 21:34:55 +00:00
tg 17ffadce08 attempt version report on msc/interix 2008-03-06 18:12:58 +00:00
tg a9501a7372 more hw info, 10x penpen 2008-03-06 18:02:33 +00:00
tg 34aa8c7a8b make gcc not nōn-silently accept -std=gnu99 if it can’t 2008-03-05 19:59:27 +00:00
tg f0234c03b9 -Wl,+k is no longer needed on HP-sUX with the native linker now that we
check the errorlevel
XXX TODO: Digital Mars
2008-03-05 19:14:19 +00:00
tg 845f6f0d64 • check for flock decl too (weird on OSF/1: if !POSIX and BSD)
• un-experimental Tru64
2008-03-05 18:49:15 +00:00
tg 194972394d yeah, sure… 2008-03-05 18:25:57 +00:00
tg 0e6df4736a • now this builds fine on DEChengst’s Tru64 box:
| OSF1 rubbereendje.dechengst.nl V5.1 2650 alpha
  with the vendor compiler:
  | Compaq C V6.5-011 on HP Tru64 UNIX V5.1B (Rev. 2650)
  | Compiler Driver V6.5-003 (sys) cc Driver
• the platform’s sig_t is incompatible too (simplify check)
• no compile warnings at all
• results in:
  $ size mksh
  | text    data    bss     dec     hex
  | 327680  16384   17808   361872  58590
  $ file mksh
  | mksh:   COFF format alpha dynamically linked, demand paged executable or object module not stripped - version 3.13-14
  $ ldd mksh
  |
  |         Main  =>   mksh
  |         libc.so  =>   /usr/shlib/libc.so
  $ ls -l mksh
  | -rwxr-xr-x   1 mirbsd   users     395200 Mar  5 19:18 mksh
• minor testsuite issues:
  FAIL ./check.t:regression-13
        unexpected stderr - got too much output
        wanted nothing
        got:
                Successful
                cat: output error
  ⇒ probably harmless
• works like a charm!
2008-03-05 18:21:45 +00:00
tg a592c65cf0 somehow magically make it seem to work 2008-03-05 17:52:43 +00:00
tg 7081a38796 Tru64 aka OSF/1 5.1 (10x DEChengst@#UnixNL) is more nice than OSF/1 4.0 2008-03-05 17:30:10 +00:00
tg f25151387d • OSF/1, PW32: speed up mirtoconf test for sig_t (which does not exist)
• OSF/1: need _XOPEN_SOURCE_EXTENDED for mknod(2) decl
2008-03-05 17:12:08 +00:00
tg 3d9bd0e1f0 OSF/1 doesn’t seem to declare revoke(2) anywhere 2008-03-05 17:06:50 +00:00
tg 227a5af8bc try to support
• DEC C on OSF/1 (10x Jupp the IceWM coffee pot maintainer)
• other stuff which doesn’t nuke a.out on failure

XXX this must be tested on *ALL* supported platforms!
2008-03-05 17:00:33 +00:00
tg 2cae6c9ab5 report OE and compiler versions inside the build script now, where methods
to query them are known (missing: bcc/dmc/msc compilers; additional OS info
besides “uname -a” and Darwin’s “hwprefs os_type” – please tell me!)
2008-03-03 19:40:08 +00:00
tg fe612d223b better debugging aid: print versions at several places 2008-03-01 15:07:50 +00:00
tg 8d170a3d01 fix on Interix, where tr(1) is more weird than even Solaris’ XPG4 one…
just do not use ranges, no matter what.
2008-02-29 16:38:41 +00:00
tg d17e25c7f4 fix passing of env var to regression tests 2008-02-29 11:57:30 +00:00
tg 3e870cb1a5 handle slowlaris idiotic /usr/xpg4/bin/tr(1) 2008-02-29 11:48:32 +00:00
tg 6976ed8bc3 get rid of u_char, u_int, u_long 2007-10-25 15:23:10 +00:00
tg 13676f4914 even better: don't require 64-bit types at all
also, improve wording of Build.sh (passive terms)
2007-10-25 14:26:53 +00:00
tg bbbe959bf2 only check for 64-bit integer types if needed (arc4random support) 2007-10-25 14:18:56 +00:00
tg d0fc6b07e0 • the “check headers for declarations” block must be a compile-time check,
not a link-time check (the only one in mirtoconf, and there are, still,
  no run-time checks, thank goddess)
• NEED_ARC4RANDOM is thusly superfluous
2007-10-15 21:09:51 +00:00
tg 0b9f22abe6 • we don’t need -D__Plan9__ at the moment
• finish with “exit 0” for good measure
2007-10-14 13:31:01 +00:00
tg 7dad41efe3 fix warning and simplify one case 2007-10-10 11:42:24 +00:00
tg 6903e79b30 improve integer type detection, as some OSes may lack only some types 2007-10-10 11:32:49 +00:00
tg eab0a407eb implement parallel make (Build.sh -j)
this is for the 16-fold Itanium Ⅱ box with 64 GiB RAM ☻
2007-10-09 14:29:42 +00:00
tg abe075c319 remove the deprecated -DMKSH_DO_MKNOD
instead, use the environment variable
• HAVE_MKNOD=0 ‣ force off
• HAVE_MKNOD=1 ‣ force on
• HAVE_MKNOD=x ‣ force detection (on even if -DMKSH_SMALL)
2007-10-09 14:21:54 +00:00
tg 491a420607 initial support pcc (somewhat) 2007-09-21 10:46:56 +00:00
tg e6ceaf921b mksh R31c 2007-09-11 18:38:29 +00:00
tg 12e371f1af • scanning for integer types: only scan for these we need,
i.e. uint32_t and uint64_t
• faking <stdint.h>: u_int32_t is not part of ISO C99, so
  do not add it there
• add a test if u_int32_t is declared, for the sake of the
  fucked up OpenBSD standard arc4random(3) declaration, and
  define it to uint32_t if the former type is not available,
  e.g. on Solaris or if we fake <stdint.h>
• fix detection of arc4random_pushb(3) and the prototypes
  if one of the things above applied to our system
• fix detection of arc4random function suite prototypes if
  they are added via an arc4random.c file in the srcdir, and
  copy that file into builddir (if it does not already exist)
  to keep these isolated from each other

based on a real-life bug report by cnuke@ at the Croatian restaurant ☺☻
unbreaks “set ±o arc4random” on Solaris, both SUNpro and GCC
2007-09-11 18:12:16 +00:00
tg 699b908b9d do not use “test … -o …” 2007-09-11 17:49:57 +00:00
tg 88bfbeb0f0 make "test $x = 1" into "test 1 = $x" consistently 2007-09-11 17:47:25 +00:00
tg 0904ad7d89 extend the scope of tests run with -Werror for gcc
otherwise, gcc4 on non-propolice-capable targets doesn’t find __attribute__
2007-09-10 20:16:47 +00:00
tg 49c7194ffa • plug in some Digital Taugtnix support, with help from the IceWM coffee pot
maintainer, or, From: Josef 'Jupp' Schugt <schugt@cip.physik.uni-bonn.de>
• www: sync changelog
2007-09-09 19:24:58 +00:00
tg 1b7294b564 more cosmetics 2007-09-09 18:31:41 +00:00
tg 9e7a50327f cosmetics - fix missing variable name 2007-09-09 18:30:04 +00:00
tg cdac7b7d65 clean up our own junk 2007-09-09 18:21:52 +00:00
tg fe65f616e4 some have u_int but not uint32_t 2007-09-09 12:02:38 +00:00
tg 6f30f395bf -std=foo can’t be made fatal even with -Werror, live with it 2007-09-09 11:55:44 +00:00
tg b06d40f8f2 autoscan for uint32_t et al. if <stdint.h> not present
this un-special-cases PW32 and should help OSF/1
2007-09-09 11:04:30 +00:00
tg a1afc4e0a7 gcc 2.8.1 (on Digital Taugtnix a.k.a. alpha-dec-osf4.0d) makes -std=foo
failures a warning only
2007-09-09 10:49:20 +00:00
tg 6c47b381c2 testing with the Heirloom sh found this… d’oh 2007-09-07 21:58:40 +00:00
tg 499327f7b8 add “set -o arc4random”, RTFM for details 2007-08-12 13:42:23 +00:00
tg 496b8f4dc3 • new way of checking for mknod & friends, due to tcc vs glibc weirdness
• bump vsn for the code restructuring
2007-07-31 11:11:25 +00:00
tg 809c1446b2 some steps towards building with tcc 2007-07-31 10:42:15 +00:00
tg 9884efef00 • implement some (not yet tested) kludges for tcc
• define $CPP internally
2007-07-31 10:17:52 +00:00
tg 735ec12dfd • TenDRA (testsuite pass)
• Fabrice Bellard’s tcc (not supported yet, may follow later)

reminded by tarzeau (Gürkan Sengün)
2007-07-31 10:04:46 +00:00
tg 3e5b234965 these are actually cool people, I think 2007-07-26 22:38:31 +00:00
tg 7374f12176 some more not-so working platforms
can't extend the working ones better since my UWIN decided to break
after MSVC++ Expreß seems to have “upgraded” some libraries… *sigh*
2007-07-24 21:54:46 +00:00
tg b20e5a90ce initial support for PW32, not quite working yet (same issues as Minix 3 and Plan 9, I think) 2007-07-24 21:47:14 +00:00
tg 748d09122a de-experimental AIX 2007-07-22 13:47:10 +00:00
tg a1433b7122 • Build.sh: always prepend well-known signal names, so that some signals
will not come up weirdly (e.g. on AIX: SIGSAK (SIGMAX?), SIGIO (SIGAIO?),
  SIGURG (SIGIOINT?)), and add a few more while here
• check.t, sh.h: bump
2007-07-22 13:46:15 +00:00
tg 979406bba7 • support IBM xlC on AIX
• fix all bugs it could find ☺
2007-07-22 13:34:52 +00:00
tg 211ecedf4e • move __GNUC__ test quite to the bottom, since I fear other compilers,
such as icc, define it too
• provide a Rebuild.sh skipping the mirtoconf checks – devel only!
2007-07-22 13:08:54 +00:00
tg 29d4125e3c switch $CC default from gcc to cc, as we support most native compilers now,
and – with Daniel's words – das ist doch kein Rumgeleenockse hier!
2007-07-17 19:41:26 +00:00
tg 823f5c2a17 hopefully fix large file stuff for real 2007-07-09 11:19:55 +00:00
tg 888740cf66 fix what happens after we check for -D_FILE_OFFSET_BITS=64 – actually
use it. discovered in debian 29.6-2 by hondza via IRC, thanks a lot!
2007-07-04 14:53:19 +00:00
tg 77e27b9656 fix temp files not being cleaned up correctly 2007-07-01 21:59:10 +00:00
tg 3ef434d378 fix NOWARN stuff 2007-07-01 21:52:20 +00:00
tg f948c13a78 • fix display problem
• add <libutil.h> if it exists – revoke(2) on UWIN
• add <stdlib.h> for NULL in test of mmap(2)
• regen CPPFLAGS for MirBSD native builds
2007-07-01 21:47:08 +00:00
tg 7004525fcc • add support for the Borland C++ Builder (on UWIN)
• add support for the Digital Mars compiler (on UWIN)
• clean up
• describe new build targets and that UWIN sucks
• bump vsn
2007-07-01 21:27:03 +00:00
tg 320b95ea4f • ugh, CR-LF line endings
• reduce number of temp files used
2007-07-01 19:24:11 +00:00
tg 36188c60be coerce this into running on UWIN - or rather sort of. Ugly. 2007-07-01 19:04:53 +00:00