• 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!
This commit is contained in:
22
Build.sh
22
Build.sh
@ -1,5 +1,5 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.285 2008/03/05 17:52:43 tg Exp $'
|
srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.286 2008/03/05 18:21:44 tg Exp $'
|
||||||
#-
|
#-
|
||||||
# Environment used: CC CFLAGS CPPFLAGS LDFLAGS LIBS NOWARN NROFF TARGET_OS
|
# Environment used: CC CFLAGS CPPFLAGS LDFLAGS LIBS NOWARN NROFF TARGET_OS
|
||||||
# CPPFLAGS recognised: MKSH_SMALL MKSH_ASSUME_UTF8 MKSH_NOPWNAM MKSH_NOVI
|
# CPPFLAGS recognised: MKSH_SMALL MKSH_ASSUME_UTF8 MKSH_NOPWNAM MKSH_NOVI
|
||||||
@ -312,8 +312,9 @@ NetBSD)
|
|||||||
OpenBSD)
|
OpenBSD)
|
||||||
;;
|
;;
|
||||||
OSF1)
|
OSF1)
|
||||||
HAVE_SIG_T=0; HAVE_SIGHANDLER_T=0; HAVE___SIGHANDLER_T=0
|
HAVE_SIG_T=0 # incompatible
|
||||||
CPPFLAGS="$CPPFLAGS -Dsig_t=nosig_t -D_XOPEN_SOURCE_EXTENDED"
|
CPPFLAGS="$CPPFLAGS -D_OSF_SOURCE -D_POSIX_C_SOURCE=200112L"
|
||||||
|
CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D_XOPEN_SOURCE_EXTENDED"
|
||||||
warn=' and is still experimental'
|
warn=' and is still experimental'
|
||||||
;;
|
;;
|
||||||
Plan9)
|
Plan9)
|
||||||
@ -322,8 +323,7 @@ Plan9)
|
|||||||
warn=' and will currently not work'
|
warn=' and will currently not work'
|
||||||
;;
|
;;
|
||||||
PW32*)
|
PW32*)
|
||||||
HAVE_SIG_T=0; HAVE_SIGHANDLER_T=0; HAVE___SIGHANDLER_T=0
|
HAVE_SIG_T=0 # incompatible
|
||||||
CPPFLAGS="$CPPFLAGS -Dsig_t=nosig_t"
|
|
||||||
warn=' and will currently not work'
|
warn=' and will currently not work'
|
||||||
# missing: killpg() getrlimit()
|
# missing: killpg() getrlimit()
|
||||||
;;
|
;;
|
||||||
@ -429,7 +429,7 @@ hpcc|icc)
|
|||||||
vv '|' "$CC -V"
|
vv '|' "$CC -V"
|
||||||
;;
|
;;
|
||||||
msc)
|
msc)
|
||||||
ccpr=
|
ccpr= # errorlevels are not reliable
|
||||||
;;
|
;;
|
||||||
pcc|sunpro|tcc)
|
pcc|sunpro|tcc)
|
||||||
vv '|' "$CC -v"
|
vv '|' "$CC -v"
|
||||||
@ -582,7 +582,7 @@ elif test $ct = hpcc; then
|
|||||||
ac_flags 1 agcc -Agcc 'for support of GCC extensions'
|
ac_flags 1 agcc -Agcc 'for support of GCC extensions'
|
||||||
ac_flags 1 ac99 -AC99 'for support of ISO C99'
|
ac_flags 1 ac99 -AC99 'for support of ISO C99'
|
||||||
elif test $ct = dec; then
|
elif test $ct = dec; then
|
||||||
ac_flags 1 verb -verbose
|
ac_flags 0 verb -verbose
|
||||||
ac_flags 1 rodata -readonly_strings
|
ac_flags 1 rodata -readonly_strings
|
||||||
elif test $ct = dmc; then
|
elif test $ct = dmc; then
|
||||||
ac_flags 1 decl "${ccpc}-r" 'for strict prototype checks'
|
ac_flags 1 decl "${ccpc}-r" 'for strict prototype checks'
|
||||||
@ -788,6 +788,7 @@ if test 1 = $HAVE___SIGHANDLER_T; then
|
|||||||
HAVE_SIG_T=1
|
HAVE_SIG_T=1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
test 1 = $HAVE_SIG_T || CPPFLAGS="$CPPFLAGS -Dsig_t=nosig_t"
|
||||||
ac_cppflags SIG_T
|
ac_cppflags SIG_T
|
||||||
|
|
||||||
ac_testn u_int32_t <<-'EOF'
|
ac_testn u_int32_t <<-'EOF'
|
||||||
@ -1009,7 +1010,11 @@ if test 0 = $HAVE_SYS_SIGNAME; then
|
|||||||
cat >scn.c <<-'EOF'
|
cat >scn.c <<-'EOF'
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#ifndef NSIG
|
#ifndef NSIG
|
||||||
|
#if defined(_NSIG)
|
||||||
#define NSIG _NSIG
|
#define NSIG _NSIG
|
||||||
|
#elif defined(SIGMAX)
|
||||||
|
#define NSIG (SIGMAX+1)
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
mksh_cfg: NSIG
|
mksh_cfg: NSIG
|
||||||
EOF
|
EOF
|
||||||
@ -1049,6 +1054,7 @@ fi
|
|||||||
|
|
||||||
addsrcs HAVE_SETMODE setmode.c
|
addsrcs HAVE_SETMODE setmode.c
|
||||||
addsrcs HAVE_STRLCPY strlcpy.c
|
addsrcs HAVE_STRLCPY strlcpy.c
|
||||||
|
test $HAVE_CAN_VERB=1 && CFLAGS="$CFLAGS -verbose"
|
||||||
CPPFLAGS="$CPPFLAGS -DHAVE_CONFIG_H -DCONFIG_H_FILENAME=\\\"sh.h\\\""
|
CPPFLAGS="$CPPFLAGS -DHAVE_CONFIG_H -DCONFIG_H_FILENAME=\\\"sh.h\\\""
|
||||||
|
|
||||||
objs=
|
objs=
|
||||||
@ -1093,7 +1099,7 @@ a.exe) tcfn=mksh.exe ;;
|
|||||||
*) tcfn=mksh ;;
|
*) tcfn=mksh ;;
|
||||||
esac
|
esac
|
||||||
v "$CC $CFLAGS $LDFLAGS -o $tcfn $objs $LIBS $ccpr"
|
v "$CC $CFLAGS $LDFLAGS -o $tcfn $objs $LIBS $ccpr"
|
||||||
test -f $ccpr || exit 1
|
test -f $tcfn || exit 1
|
||||||
test 1 = $r || v "$NROFF -mdoc <'$srcdir/mksh.1' >mksh.cat1" || \
|
test 1 = $r || v "$NROFF -mdoc <'$srcdir/mksh.1' >mksh.cat1" || \
|
||||||
rm -f mksh.cat1
|
rm -f mksh.cat1
|
||||||
test 0 = $eq && test 1 = $h && v size $tcfn
|
test 0 = $eq && test 1 = $h && v size $tcfn
|
||||||
|
4
check.t
4
check.t
@ -1,4 +1,4 @@
|
|||||||
# $MirOS: src/bin/mksh/check.t,v 1.157 2008/03/01 22:58:22 tg Rel $
|
# $MirOS: src/bin/mksh/check.t,v 1.158 2008/03/05 18:21:44 tg Exp $
|
||||||
# $OpenBSD: bksl-nl.t,v 1.2 2001/01/28 23:04:56 niklas Exp $
|
# $OpenBSD: bksl-nl.t,v 1.2 2001/01/28 23:04:56 niklas Exp $
|
||||||
# $OpenBSD: history.t,v 1.5 2001/01/28 23:04:56 niklas Exp $
|
# $OpenBSD: history.t,v 1.5 2001/01/28 23:04:56 niklas Exp $
|
||||||
# $OpenBSD: read.t,v 1.3 2003/03/10 03:48:16 david Exp $
|
# $OpenBSD: read.t,v 1.3 2003/03/10 03:48:16 david Exp $
|
||||||
@ -7,7 +7,7 @@
|
|||||||
# http://www.research.att.com/~gsf/public/ifs.sh
|
# http://www.research.att.com/~gsf/public/ifs.sh
|
||||||
|
|
||||||
expected-stdout:
|
expected-stdout:
|
||||||
@(#)MIRBSD KSH R33 2008/03/01
|
@(#)MIRBSD KSH R33 2008/03/05
|
||||||
description:
|
description:
|
||||||
Check version of shell.
|
Check version of shell.
|
||||||
category: pdksh
|
category: pdksh
|
||||||
|
8
sh.h
8
sh.h
@ -8,8 +8,8 @@
|
|||||||
/* $OpenBSD: c_test.h,v 1.4 2004/12/20 11:34:26 otto Exp $ */
|
/* $OpenBSD: c_test.h,v 1.4 2004/12/20 11:34:26 otto Exp $ */
|
||||||
/* $OpenBSD: tty.h,v 1.5 2004/12/20 11:34:26 otto Exp $ */
|
/* $OpenBSD: tty.h,v 1.5 2004/12/20 11:34:26 otto Exp $ */
|
||||||
|
|
||||||
#define MKSH_SH_H_ID "$MirOS: src/bin/mksh/sh.h,v 1.193 2008/03/05 17:06:50 tg Exp $"
|
#define MKSH_SH_H_ID "$MirOS: src/bin/mksh/sh.h,v 1.194 2008/03/05 18:21:45 tg Exp $"
|
||||||
#define MKSH_VERSION "R33 2008/03/01"
|
#define MKSH_VERSION "R33 2008/03/05"
|
||||||
|
|
||||||
#if HAVE_SYS_PARAM_H
|
#if HAVE_SYS_PARAM_H
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
@ -183,7 +183,11 @@ typedef int bool;
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NSIG
|
#ifndef NSIG
|
||||||
|
#if defined(_NSIG)
|
||||||
#define NSIG _NSIG
|
#define NSIG _NSIG
|
||||||
|
#elif defined(SIGMAX)
|
||||||
|
#define NSIG (SIGMAX+1)
|
||||||
|
#endif
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#undef BAD /* AIX defines that somewhere */
|
#undef BAD /* AIX defines that somewhere */
|
||||||
|
Reference in New Issue
Block a user