pkgsrc-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: pkgsrc/shells/ksh93



Module Name:    pkgsrc
Committed By:   pin
Date:           Sun Jul  3 20:57:38 UTC 2022

Added Files:
        pkgsrc/shells/ksh93: DESCR Makefile PLIST distinfo
        pkgsrc/shells/ksh93/patches: patch-src_lib_libast_features_syscall

Log Message:
shells/ksh93: import package

Packaged in wip by Paolo Vincenzo Olivo.

Between 2017 and 2020 there was an ultimately unsuccessful attempt to breathe
new life into the KornShell by extensively refactoring the last unstable AST
beta version (93v-). While that ksh2020 effort is now abandoned and still has
many critical bugs, it also had a lot of bugs fixed. More importantly, the AST
issue tracker now contains a lot of documentation on how to fix those bugs,
which made it possible to backport many of them to the last stable release
instead. This ksh 93u+m reboot now incorporates many of these bugfixes, plus
patches from OpenSUSE, Red Hat, and Solaris, as well as many new fixes from the
community (1, 2). Though there are many bugs left to fix, we are confident at
this point that 93u+m is already the least buggy version of ksh93 ever
released. As of late 2021, distributions such as Debian and Slackware have
begun to package it as their default version of ksh93.


To generate a diff of this commit:
cvs rdiff -u -r0 -r1.1 pkgsrc/shells/ksh93/DESCR pkgsrc/shells/ksh93/Makefile \
    pkgsrc/shells/ksh93/PLIST pkgsrc/shells/ksh93/distinfo
cvs rdiff -u -r0 -r1.1 \
    pkgsrc/shells/ksh93/patches/patch-src_lib_libast_features_syscall

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Added files:

Index: pkgsrc/shells/ksh93/DESCR
diff -u /dev/null pkgsrc/shells/ksh93/DESCR:1.1
--- /dev/null   Sun Jul  3 20:57:38 2022
+++ pkgsrc/shells/ksh93/DESCR   Sun Jul  3 20:57:38 2022
@@ -0,0 +1,12 @@
+Between 2017 and 2020 there was an ultimately unsuccessful attempt to breathe
+new life into the KornShell by extensively refactoring the last unstable AST
+beta version (93v-). While that ksh2020 effort is now abandoned and still has
+many critical bugs, it also had a lot of bugs fixed. More importantly, the AST
+issue tracker now contains a lot of documentation on how to fix those bugs,
+which made it possible to backport many of them to the last stable release
+instead. This ksh 93u+m reboot now incorporates many of these bugfixes, plus
+patches from OpenSUSE, Red Hat, and Solaris, as well as many new fixes from the
+community (1, 2). Though there are many bugs left to fix, we are confident at
+this point that 93u+m is already the least buggy version of ksh93 ever
+released. As of late 2021, distributions such as Debian and Slackware have
+begun to package it as their default version of ksh93.
Index: pkgsrc/shells/ksh93/Makefile
diff -u /dev/null pkgsrc/shells/ksh93/Makefile:1.1
--- /dev/null   Sun Jul  3 20:57:38 2022
+++ pkgsrc/shells/ksh93/Makefile        Sun Jul  3 20:57:38 2022
@@ -0,0 +1,51 @@
+# $NetBSD: Makefile,v 1.1 2022/07/03 20:57:38 pin Exp $
+
+DISTNAME=      v1.0.0-beta.2
+PKGVER=                ${DISTNAME:S,^v,,:S,-beta,,}
+PKGNAME=       ${GITHUB_PROJECT}93-${PKGVER}
+CATEGORIES=    shells
+MASTER_SITES=  ${MASTER_SITE_GITHUB:=ksh93/}
+GITHUB_PROJECT=        ksh
+GITHUB_TAG=    ${DISTNAME}
+
+MAINTAINER=    vms%retrobsd.ddns.net@localhost
+HOMEPAGE=      https://github.com/ksh93/ksh/
+COMMENT=       Actively developed fork of AT&T KornShell 93u+
+LICENSE=       epl-v1.0
+
+CONFLICTS+=            ast-ksh-[0-9]* static-ast-ksh-[0-9]*
+
+USE_LANGUAGES=         c
+FORTIFY_SUPPORTED=     no
+
+KSH=   ${TOOLS_PATH.ksh:Q}
+
+MAKEFLAGS+=            CC=${CC:Q} SHELL=${KSH}
+MAKEFLAGS+=            CCFLAGS=${CFLAGS:M*:Q}
+
+CFLAGS.SunOS+= -std=c11 -D__EXTENSIONS__
+
+PKG_SHELL=             bin/ksh93
+
+INSTALLATION_DIRS=     bin ${PKGMANDIR}/man1
+
+WRKSRC=        ${WRKDIR}/ksh-${DISTNAME:S,^v,,}
+
+do-build:
+       cd ${WRKSRC} && ${SETENV} ${MAKE_ENV}                           \
+               ${KSH} ./bin/package make ${MAKEFLAGS}
+
+do-install:
+       set -e;                                                         \
+       arch=`${WRKSRC}/bin/package host`;                              \
+       ${INSTALL_PROGRAM} ${WRKSRC}/arch/"$${arch}"/bin/ksh            \
+               ${DESTDIR}${PREFIX}/bin/ksh93
+
+       ${INSTALL_MAN} ${WRKSRC}/src/cmd/ksh93/sh.1                     \
+               ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/ksh93.1
+
+do-test:
+       cd ${WRKSRC} && ${SETENV} SHELL=${KSH}                          \
+               ${KSH} ./bin/package test
+
+.include "../../mk/bsd.pkg.mk"
Index: pkgsrc/shells/ksh93/PLIST
diff -u /dev/null pkgsrc/shells/ksh93/PLIST:1.1
--- /dev/null   Sun Jul  3 20:57:38 2022
+++ pkgsrc/shells/ksh93/PLIST   Sun Jul  3 20:57:38 2022
@@ -0,0 +1,3 @@
+@comment $NetBSD: PLIST,v 1.1 2022/07/03 20:57:38 pin Exp $
+bin/ksh93
+man/man1/ksh93.1
Index: pkgsrc/shells/ksh93/distinfo
diff -u /dev/null pkgsrc/shells/ksh93/distinfo:1.1
--- /dev/null   Sun Jul  3 20:57:38 2022
+++ pkgsrc/shells/ksh93/distinfo        Sun Jul  3 20:57:38 2022
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1 2022/07/03 20:57:38 pin Exp $
+
+BLAKE2s (v1.0.0-beta.2.tar.gz) = 1852a7f7963978ea6b80d47a915fe0da868bb91f8d9830056dfc6ea1b3303165
+SHA512 (v1.0.0-beta.2.tar.gz) = c2cd5a4b442bcff1dd2c1c054ee79c4cb131dce28d811dcd3476164d6cb7e88e6b317a094b16f227564a1266708ef0cfeca2af0929c00a19497cf1b67c647cf2
+Size (v1.0.0-beta.2.tar.gz) = 2238224 bytes
+SHA1 (patch-src_lib_libast_features_syscall) = 725fead538810678e808c6fdfd543fa1a0415645

Index: pkgsrc/shells/ksh93/patches/patch-src_lib_libast_features_syscall
diff -u /dev/null pkgsrc/shells/ksh93/patches/patch-src_lib_libast_features_syscall:1.1
--- /dev/null   Sun Jul  3 20:57:38 2022
+++ pkgsrc/shells/ksh93/patches/patch-src_lib_libast_features_syscall   Sun Jul  3 20:57:38 2022
@@ -0,0 +1,32 @@
+$NetBSD: patch-src_lib_libast_features_syscall,v 1.1 2022/07/03 20:57:38 pin Exp $
+
+On NetBSD, use `SYS___getcwd' to get the getcwd(2) syscall. 
+
+--- src/lib/libast/features/syscall.orig       2021-12-17 03:20:04.000000000 +0000
++++ src/lib/libast/features/syscall
+@@ -1,9 +1,13 @@
+-lib   sysgetcwd note{ syscall(SYS_getcwd,buf,len) implemented }end link{
++lib    sysgetcwd note{ syscall(SYS_getcwd/SYS___getcwd,buf,len) implemented }end link{
+       #include <sys/syscall.h>
+       int main()
+       {
+               char    buf[256];
++      #ifdef __NetBSD__
++              return syscall(SYS___getcwd, buf, sizeof(buf)) < 0;
++      #else
+               return syscall(SYS_getcwd, buf, sizeof(buf)) < 0;
++      #endif
+       }
+ }end
+ 
+@@ -13,6 +17,10 @@ if  ( _lib_sysgetcwd ) {
+ endif
+ 
+ if    ( _lib_sysgetcwd ) {
++      #ifdef __NetBSD__
++      #define SYSGETCWD(a,b)          syscall(SYS___getcwd,a,b)
++      #else
+       #define SYSGETCWD(a,b)          syscall(SYS_getcwd,a,b)
++      #endif
+ }
+ endif



Home | Main Index | Thread Index | Old Index