diff --git a/lksh.1 b/lksh.1 index d040352..8f9fe46 100644 --- a/lksh.1 +++ b/lksh.1 @@ -1,6 +1,6 @@ -.\" $MirOS: contrib/hosted/tg/deb/mksh/debian/lksh.1,v 1.4 2012/06/30 17:24:36 tg Exp $ +.\" $MirOS: contrib/hosted/tg/deb/mksh/debian/lksh.1,v 1.8 2013/04/26 22:25:47 tg Exp $ .\"- -.\" Copyright (c) 2008, 2009, 2010, 2012 +.\" Copyright (c) 2008, 2009, 2010, 2012, 2013 .\" Thorsten “mirabilos” Glaser .\"- .\" Try to make GNU groff and AT&T nroff more compatible @@ -57,7 +57,7 @@ .\" with -mandoc, it might implement .Mx itself, but we want to .\" use our own definition. And .Dd must come *first*, always. .\" -.Dd $Mdocdate: June 30 2012 $ +.Dd $Mdocdate: April 26 2013 $ .\" .\" Check which macro package we use, and do other -mdoc setup. .\" @@ -187,6 +187,13 @@ specific extensions are missing; specifically, the .Fl T command-line option. .It +Some extensions from other shells, such as +.Tn GNU +.Nm bash , +which +.Nm mksh +provides, are missing, for increased compatibility with legacy scripts. +.It .Nm always uses traditional mode for constructs like: .Bd -literal -offset indent @@ -223,6 +230,9 @@ but might work on 32-bit and 64-bit .Vt long types .Pc . +.It +.Nm +only offers the traditional ten file descriptors to scripts. .El .Sh SEE ALSO .Xr mksh 1 @@ -255,11 +265,15 @@ or Talk to the .Mx development team using the mailing list at -.Aq miros\-discuss@mirbsd.org +.Aq miros\-mksh@mirbsd.org or the .Li \&#\&!/bin/mksh .Pq or Li \&#ksh IRC channel at .Pa irc.freenode.net .Pq Port 6697 SSL, 6667 unencrypted -if you need any further quirks. +if you need any further quirks or assistance, +and consider migrating your legacy scripts to work with +.Nm mksh +instead of requiring +.Nm . diff --git a/mksh.spec b/mksh.spec index 828a381..2966b38 100644 --- a/mksh.spec +++ b/mksh.spec @@ -1,12 +1,12 @@ %define _bindir /bin Summary: MirBSD enhanced version of the Korn Shell Name: mksh -Version: 44 +Version: 45 Release: 1%{?dist} # BSD (setmode.c), ISC (strlcpy.c), MirOS (the rest) License: MirOS and ISC and BSD Group: System Environment/Shells -URL: http://www.mirbsd.de/%{name}.htm +URL: https://www.mirbsd.de/%{name}.htm Source0: http://www.mirbsd.org/MirOS/dist/mir/%{name}/%{name}-R%{version}.tgz Source1: dot-mkshrc Source2: lksh.1 @@ -26,43 +26,49 @@ bourne shell replacement, pdksh successor and an alternative to the C shell. %prep %setup -q -n %{name} -# we'll need this later due to -DMKSH_GCC55009 +# we'll need this later cat >rtchecks <<'EOF' typeset -i sari=0 typeset -Ui uari=0 typeset -i x=0 -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #0 let --sari --uari -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #1 sari=2147483647 uari=2147483647 -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #2 let ++sari ++uari -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #3 let --sari --uari let 'sari *= 2' 'uari *= 2' let ++sari ++uari -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #4 let ++sari ++uari -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #5 sari=-2147483648 uari=-2147483648 -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #6 let --sari --uari -print -r -- $((x++)):$sari=$uari. +print -r -- $((x++)):$sari=$uari. #7 +(( sari = -5 >> 1 )) +((# uari = -5 >> 1 )) +print -r -- $((x++)):$sari=$uari. #8 +(( sari = -2 )) +((# uari = sari )) +print -r -- $((x++)):$sari=$uari. #9 EOF %build # Work around RHBZ #922974 on Fedora 19 and later %if 0%{?fedora} >= 19 -CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL -DMKSH_GCC55009" sh Build.sh -r +CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL" sh Build.sh -r %else -CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL -DMKSH_GCC55009" sh Build.sh -r -c lto +CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL" sh Build.sh -r -c lto %endif cp test.sh test_mksh.sh # Work around RHBZ #922974 on Fedora 19 and later %if 0%{?fedora} >= 19 -CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL -DMKSH_GCC55009" sh Build.sh -L -r +CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL" sh Build.sh -L -r %else -CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL -DMKSH_GCC55009" sh Build.sh -L -r -c lto +CFLAGS="$RPM_OPT_FLAGS -DMKSH_DISABLE_EXPERIMENTAL" sh Build.sh -L -r -c lto %endif cp test.sh test_lksh.sh @@ -119,6 +125,11 @@ rm -rf $RPM_BUILD_ROOT %{_mandir}/man1/lksh.1* %changelog +* Wed May 01 2013 Thorsten Glaser 45-1 +- Upgrade mksh to R45 and the other files to the accompanying versions +- Drop workaround for GCC PR55009 (no longer needed) +- Use https for homepage + * Mon Mar 18 2013 Robert Scheck 44-1 - Upgrade to 44 and work around bug in GCC 4.8 (#922974) diff --git a/rtchecks.expected b/rtchecks.expected index 0d9a267..56e47ca 100644 --- a/rtchecks.expected +++ b/rtchecks.expected @@ -6,3 +6,5 @@ 5:0=0. 6:-2147483648=2147483648. 7:2147483647=2147483647. +8:-3=2147483645. +9:-2=4294967294. diff --git a/sources b/sources index 2435fac..6590e1a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -fe011686319a8c50d5e237fd5e195fd8 mksh-R44.tgz +d3d90973119ae689d5300b690600e1dc mksh-R45.tgz