diff --git a/Build.sh b/Build.sh index 32f17eb..578e223 100644 --- a/Build.sh +++ b/Build.sh @@ -1,5 +1,5 @@ #!/bin/sh -srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.477 2011/04/09 21:00:58 tg Exp $' +srcversion='$MirOS: src/bin/mksh/Build.sh,v 1.478 2011/05/29 16:31:38 tg Exp $' #- # Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 # Thorsten Glaser @@ -535,6 +535,10 @@ test 0 = $r && echo | $NROFF -v 2>&1 | grep GNU >/dev/null 2>&1 && \ # this aids me in tracing FTBFSen without access to the buildd $e "Hi from$ao $bi$srcversion$ao on:" case $TARGET_OS in +AIX) + vv '|' "oslevel >&2" + vv '|' "uname -a >&2" + ;; Darwin) vv '|' "hwprefs machine_type os_type os_class >&2" vv '|' "uname -a >&2" @@ -754,6 +758,7 @@ watcom) own risk, please report success/failure to the developers.' ;; xlc) + vv '|' "$CC $CFLAGS $CPPFLAGS $LDFLAGS $NOWARN $LIBS -qversion" vv '|' "$CC $CFLAGS $CPPFLAGS $LDFLAGS $NOWARN $LIBS -qversion=verbose" vv '|' "ld -V" ;; @@ -1448,7 +1453,7 @@ mksh_cfg: NSIG' >conftest.c vq "$CPP $CFLAGS $CPPFLAGS $NOWARN conftest.c" | \ grep mksh_cfg: | \ sed 's/^mksh_cfg:[ ]*\([0-9x]*\).*$/\1:'$name/ - done | grep -v '^:' | while IFS=: read nr name; do + done | grep -v '^:' | sed 's/:/ /g' | while read nr name; do test $printf = echo || nr=`printf %d "$nr" 2>/dev/null` test $nr -gt 0 && test $nr -le $NSIG || continue case $sigseen in diff --git a/check.t b/check.t index bfd80a8..73db1cd 100644 --- a/check.t +++ b/check.t @@ -1,4 +1,4 @@ -# $MirOS: src/bin/mksh/check.t,v 1.455 2011/05/29 02:18:47 tg Exp $ +# $MirOS: src/bin/mksh/check.t,v 1.456 2011/05/29 16:31:40 tg 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: read.t,v 1.3 2003/03/10 03:48:16 david Exp $ @@ -25,7 +25,7 @@ # http://www.research.att.com/~gsf/public/ifs.sh expected-stdout: - @(#)MIRBSD KSH R39 2011/05/28 + @(#)MIRBSD KSH R40 2011/05/29 description: Check version of shell. stdin: @@ -1009,6 +1009,8 @@ name: cd-pe description: Check package for cd -Pe need-pass: no +# the mv command fails on Cygwin +category: !os:cygwin file-setup: file 644 "x" mkdir noread noread/target noread/target/subdir ln -s noread link @@ -1019,7 +1021,9 @@ file-setup: file 644 "x" cd -P$1 link/target echo 1=$?,${PWD#$bwd/} epwd=$($TSHELL -c pwd 2>/dev/null) - echo pwd=$?,$epwd + # This unexpectedly succeeds on GNU/Linux and MidnightBSD + #echo pwd=$?,$epwd + # expect: pwd=1, mv ../../noread ../../renamed cd -P$1 subdir echo 2=$?,${PWD#$bwd/} @@ -1034,12 +1038,10 @@ stdin: expected-stdout: 0=0 1=0,noread/target - pwd=1, 2=0,noread/target/subdir now with -e: 0=0 1=0,noread/target - pwd=1, 2=1,noread/target/subdir --- name: env-prompt @@ -1907,7 +1909,8 @@ name: glob-range-3 description: Check that globbing matches the right things... # breaks on Mac OSX (HFS+ non-standard Unicode canonical decomposition) -category: !os:darwin +# breaks on Cygwin 1.7 (files are now UTF-16 or something) +category: !os:cygwin,!os:darwin file-setup: file 644 "aÂc" stdin: echo a[Á-Ú]* @@ -2544,6 +2547,7 @@ description: late. Heredoc in function, backgrounded call to function. This check can fail on slow machines (<100 MHz), or Cygwin, that's normal. +need-pass: no stdin: TMPDIR=$PWD # Background eval so main shell doesn't do parsing diff --git a/main.c b/main.c index d532ea3..e913e80 100644 --- a/main.c +++ b/main.c @@ -33,7 +33,7 @@ #include #endif -__RCSID("$MirOS: src/bin/mksh/main.c,v 1.190 2011/04/17 12:24:43 tg Exp $"); +__RCSID("$MirOS: src/bin/mksh/main.c,v 1.191 2011/05/29 16:31:42 tg Exp $"); extern char **environ; @@ -1010,7 +1010,10 @@ tty_close(void) #define VWARNINGF_BUILTIN 4 #define VWARNINGF_INTERNAL 8 -static void MKSH_A_FORMAT(__printf__, 2, 0) +static void vwarningf(unsigned int, const char *, va_list) + MKSH_A_FORMAT(__printf__, 2, 0); + +static void vwarningf(unsigned int flags, const char *fmt, va_list ap) { if (*fmt != 1) { diff --git a/sh.h b/sh.h index b9b0e00..f0a2b36 100644 --- a/sh.h +++ b/sh.h @@ -151,9 +151,9 @@ #endif #ifdef EXTERN -__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.470 2011/05/29 02:18:55 tg Exp $"); +__RCSID("$MirOS: src/bin/mksh/sh.h,v 1.471 2011/05/29 16:31:42 tg Exp $"); #endif -#define MKSH_VERSION "R39 2011/05/28" +#define MKSH_VERSION "R40 2011/05/29" #ifndef MKSH_INCLUDES_ONLY