Commit Graph

381 Commits

Author SHA1 Message Date
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
tg af1aa9655f MSC improvements 2007-07-01 18:00:18 +00:00
tg 2f734698d3 • mirtoconf if MS C security checks work (with our C library)
• simplify "-Wc," ./. "-X " ./. "-Yc," separation
2007-07-01 17:22:07 +00:00
tg 74c0adf312 mirtoconf for mmap(2), UWIN doesn't have it 2007-07-01 17:19:15 +00:00
tg f84505395a some vendors' cc(1) doesn't support -E from stdin like cpp(1) 2007-07-01 16:57:00 +00:00
tg 69f7683156 • enable UWIN as operating environment
• cover for differences in UWIN's and Interix' cc(1) wrapper
• AT&T tr(1) is defective, just skip + and - chars
2007-07-01 16:47:05 +00:00
tg cf6137238c • fix AIX variant of large files
• use DOWARN semantically correct
• support the Microsoft® C Compiler
• on Interix, disable msc's security checks, as it relies on
  library functions not provided by Interix' libc (XXX mirtoconf this)
2007-07-01 15:45:58 +00:00
tg cf29aa83c5 oops (quoting) 2007-06-30 22:02:50 +00:00
tg b97fd7f401 optimise, fix quoting, modularise even more 2007-06-30 21:34:23 +00:00
tg 126eb43ab3 improve wording and remove a dead check 2007-06-30 21:01:42 +00:00
tg 1336e9f1bb modularise, optimise, upgrade coding style(9), display nicer 2007-06-30 20:57:55 +00:00
tg 0cc45784ca nuke $tcbo (unused) 2007-06-30 20:04:23 +00:00
tg 360c956b10 make HAVE_CPP_DD a 0/1/undef mirtoconf value like the others
XXX maybe generalise the logic from there and ac_testn
XXX offer the user to give list of known signal names (and NSIG? or ignore?)
2007-06-30 19:58:51 +00:00
tg af5c570143 • bugfix – "printf %d '(1)'" is a syntax error too, enhance character class
• speed up – I don't worry about embedded control characters in the source,
  as jupp(1) handles these just fine [http://mirbsd.de/jupp]
2007-06-30 19:48:04 +00:00
tg 265e82757f kludge for intel's c(rap) compiler 2007-06-23 20:51:21 +00:00
tg 4fef868b6d solve the ugly warnings, be more consistent, allow __attribute__ to depend
on compiler option features, etc.
2007-06-21 16:11:37 +00:00
tg f738b28b3b this solves
| HP-UX td193 B.11.31 U ia64 2909796781 unlimited-user license
| cc: HP C/aC++ B3910B A.06.14 [Feb 22 2007]
| ld: 92453-07 linker ld HP Itanium(R) B.12.43  IPF/IPF
| Total failed: 1 (as expected)
| Total passed: 220
except for an ugly warning
2007-06-21 15:53:14 +00:00
tg bf503a1fa0 make this build with
| cpp.ansi: HP92453-01 B.11.31.01 HP C Preprocessor (ANSI)
| ccom: HP92453-01 B.11.X.36086-36089-36092.GP HP C Compiler
| /usr/ccs/bin/ld: 92453-07 linker linker ld B.11.60 070209
on
| mirbsd@td191:~/mksh $ uname -a
| HP-UX td191 B.11.31 U 9000/800 3397116299 unlimited-user license
resulting in
| Total failed: 1 (as expected)
| Total passed: 220

so I suppose it's no longer experimental on HP-UX… it also works on/with
| HP-UX td192 B.11.11 U 9000/800 1839940656 unlimited-user license
| gcc version 3.4.2
| Can't locate POSIX.pm in @INC…
and
| HP-UX td192 B.11.11 U 9000/800 1839940656 unlimited-user license
| cpp.ansi: HP92453-01 B.11.X.35175-35176.GP HP C Preprocessor (ANSI)
| ccom: HP92453-01 B.11.X.36086-36089-36092.GP HP C Compiler
| /usr/ccs/bin/ld: 92453-07 linker linker ld B.11.60 070209
and
| HP-UX td176 B.11.23 U ia64 1928826293 unlimited-user license
| Reading specs from /usr/local/lib/gcc/ia64-hp-hpux11.23/3.4.3/specs
| Total failed: 1 (as expected)
| Total passed: 219

still work to do for HP C on IA64
2007-06-21 15:43:33 +00:00
tg 17b7a28ac8 • check.t: add some FPOSIX regression tests (1 still fails)
• all: remove vi editing mode #if defined(MKSH_SMALL) || defined(MKSH_NOVI)
  saves 12608 byts on i386
• check.t: add $0 quoting
2007-06-15 21:55:20 +00:00
tg f9b33dffea from my change in debian mksh-29.6-2: if arc4random exists, use it 2007-06-10 17:06:07 +00:00
tg eb47c62e8d fix -xO2 to environment addition, discovered by cnuke@ 2007-06-09 22:06:55 +00:00
tg bf671f42fa don't use __extension__, cought by sunpro on linux 2007-06-09 22:01:42 +00:00
tg ffd63798f3 ugh… (no comment) 2007-06-06 23:25:28 +00:00
tg dd4b823c07 oops 2007-06-06 22:03:24 +00:00