This updates ksh93 to the actively maintained development branch at
https://github.com/ksh93/ksh/. Although it's still labelled as "beta",
it is most definitely an improvement from the nine-year-old AT&T release
we have now, so I'd like to commit the update.
It also fixes the va_args problem seen on powerpc.
Index: Makefile
===================================================================
RCS file: /cvs/ports/shells/ksh93/Makefile,v
retrieving revision 1.12
diff -u -p -r1.12 Makefile
--- Makefile 20 Feb 2021 20:15:29 -0000 1.12
+++ Makefile 21 Dec 2021 19:28:43 -0000
@@ -1,20 +1,16 @@
# $OpenBSD: Makefile,v 1.12 2021/02/20 20:15:29 cwen Exp $
-# error: non-const lvalue reference to type '__builtin_va_list' cannot bind to
-# a temporary of type 'va_list' (aka 'char *')
-BROKEN-powerpc64 = libast fails to build on hashalloc.c/tokscan.c
-BROKEN-powerpc = libast fails to build on hashalloc.c/tokscan.c
-
COMMENT = AT&T Korn Shell
-V = 2012-08-01
-DISTNAME = ast-ksh.${V}
-PKGNAME = ksh93-${V:S/-//g}
-REVISION = 1
+GH_ACCOUNT = ksh93
+GH_PROJECT = ksh
+GH_TAGNAME = v1.0.0-beta.2
+PKGNAME = ksh93-1.0.0beta2
+EPOCH = 0
CATEGORIES = shells
-HOMEPAGE = http://www.kornshell.com/
+HOMEPAGE = https://github.com/ksh93/ksh
MAINTAINER = Pascal Stumpf <pascal@stumpf.co>
@@ -23,28 +19,18 @@ PERMIT_PACKAGE = Yes
WANTLIB += c m util
-MASTER_SITES = https://spacehopper.org/mirrors/
-DISTFILES = ${DISTNAME}${EXTRACT_SUFX} INIT.${V}${EXTRACT_SUFX}
-EXTRACT_SUFX = .tgz
-DIST_SUBDIR = ksh93
-
-MAKE_ENV = CC="${CC}" CCFLAGS="${CFLAGS}" SHELL=/bin/sh \
- TMPDIR="${WRKDIR}"
+MAKE_ENV = CC="${CC}" CCFLAGS="${CFLAGS}" LDFLAGS="-lm" \
+ SHELL=/bin/sh TMPDIR="${WRKDIR}"
USE_GROFF = Yes
-WRKDIST = ${WRKDIR}
-.if ${MACHINE_ARCH} == "hppa"
-AST_ARCH = ${WRKSRC}/arch/openbsd.pa
-.elif ${MACHINE_ARCH} == "powerpc"
-AST_ARCH = ${WRKSRC}/arch/openbsd.ppc
-.else
-AST_ARCH = ${WRKSRC}/arch/openbsd.${MACHINE_ARCH}
-.endif
+HOSTTYPE = openbsd.${MACHINE_ARCH}
+AST_ARCH = ${WRKSRC}/arch/${HOSTTYPE}
AST_INC = ${AST_ARCH}/include/ast
do-build:
- cd ${WRKSRC} && env -i ${MAKE_ENV} /bin/sh bin/package make
+ cd ${WRKSRC} && env -i ${MAKE_ENV} /bin/sh bin/package make \
+ HOSTTYPE="${HOSTTYPE}"
do-install:
${INSTALL_PROGRAM} ${AST_ARCH}/bin/ksh ${PREFIX}/bin/ksh93
Index: distinfo
===================================================================
RCS file: /cvs/ports/shells/ksh93/distinfo,v
retrieving revision 1.1.1.1
diff -u -p -r1.1.1.1 distinfo
--- distinfo 13 Oct 2012 15:11:51 -0000 1.1.1.1
+++ distinfo 21 Dec 2021 19:28:43 -0000
@@ -1,4 +1,2 @@
-SHA256 (ksh93/INIT.2012-08-01.tgz) = xAz1fpshhicanDYqVgqkpuJbqRGoJYq5MdK7285Ez+U=
-SHA256 (ksh93/ast-ksh.2012-08-01.tgz) = 5hks+lKmqf0gYYy68/qB8Myf2DUlUAdX6DAXJ16WKFE=
-SIZE (ksh93/INIT.2012-08-01.tgz) = 377769
-SIZE (ksh93/ast-ksh.2012-08-01.tgz) = 2053532
+SHA256 (ksh-1.0.0-beta.2.tar.gz) = 2GeNI8PJYzoD5PyJXmBM3Qry/wBtAmhXmzopvt37hGM=
+SIZE (ksh-1.0.0-beta.2.tar.gz) = 2238224
Index: patches/patch-bin_package
===================================================================
RCS file: patches/patch-bin_package
diff -N patches/patch-bin_package
--- patches/patch-bin_package 13 Oct 2012 15:11:51 -0000 1.1.1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,21 +0,0 @@
-$OpenBSD: patch-bin_package,v 1.1.1.1 2012/10/13 15:11:51 pascal Exp $
---- bin/package.orig Fri Aug 10 21:22:28 2012
-+++ bin/package Fri Aug 10 21:23:14 2012
-@@ -2823,7 +2823,7 @@ cat $INITROOT/$i.sh
- # check if $CC (full path $cc) is a cross compiler
-
- (
-- cd /tmp || exit 3
-+ cd ${TMPDIR:-/tmp} || exit 3
- cp $INITROOT/hello.c pkg$$.c || exit 3
- $cc -o pkg$$.exe pkg$$.c > pkg$$.e 2>&1 || {
- if $cc -Dnew=old -o pkg$$.exe pkg$$.c > /dev/null 2>&1
-@@ -3193,7 +3193,7 @@ cygwin.*)
- lose=ntsec
- ;;
- *ntsec*);;
-- *) exe=/tmp/pkg$$.exe
-+ *) exe=${TMPDIR:-/tmp}/pkg$$.exe
- rm -f $exe
- : > $exe
- if test -x $exe
Index: patches/patch-src_cmd_ksh93_Mamfile
===================================================================
RCS file: patches/patch-src_cmd_ksh93_Mamfile
diff -N patches/patch-src_cmd_ksh93_Mamfile
--- patches/patch-src_cmd_ksh93_Mamfile 1 May 2018 08:37:50 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,23 +0,0 @@
-$OpenBSD: patch-src_cmd_ksh93_Mamfile,v 1.1 2018/05/01 08:37:50 pascal Exp $
-
-Index: src/cmd/ksh93/Mamfile
---- src/cmd/ksh93/Mamfile.orig
-+++ src/cmd/ksh93/Mamfile
-@@ -1337,7 +1337,7 @@ prev +ljobs
- prev +li
- prev ${mam_libsocket}
- prev ${mam_libsecdb}
--exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o ksh pmain.o ${mam_libshell} ${mam_libnsl} ${mam_libast}
-+exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o ksh pmain.o ${mam_libshell} ${mam_libnsl} ${mam_libast} -lm
- done ksh generated
- make shcomp
- make shcomp.o
-@@ -1361,7 +1361,7 @@ prev ${mam_libsocket}
- prev ${mam_libsecdb}
- setv CC.DLL -UCC.DLL
- setv SH_DICT -DSH_DICT="\"libshell\""
--exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o shcomp shcomp.o ${mam_libshell} ${mam_libnsl} ${mam_libast}
-+exec - ${CC} ${CCLDFLAGS} ${mam_cc_FLAGS} ${CCFLAGS} ${LDFLAGS} ${mam_cc_L+-L.} ${mam_cc_L+-L${INSTALLROOT}/lib} -o shcomp shcomp.o ${mam_libshell} ${mam_libnsl} ${mam_libast} -lm
- done shcomp generated
- make suid_exec
- make suid_exec.o
Index: patches/patch-src_cmd_ksh93_edit_history_c
===================================================================
RCS file: patches/patch-src_cmd_ksh93_edit_history_c
diff -N patches/patch-src_cmd_ksh93_edit_history_c
--- patches/patch-src_cmd_ksh93_edit_history_c 11 Jul 2014 20:55:40 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-src_cmd_ksh93_edit_history_c,v 1.1 2014/07/11 20:55:40 pascal Exp $
---- src/cmd/ksh93/edit/history.c.orig Fri Jul 11 10:03:31 2014
-+++ src/cmd/ksh93/edit/history.c Fri Jul 11 10:04:59 2014
-@@ -834,7 +834,7 @@ static int hist_write(Sfio_t *iop,const void *buff,reg
- if(hp->auditfp)
- {
- time_t t=time((time_t*)0);
-- sfprintf(hp->auditfp,"%u;%u;%s;%*s%c",sh_isoption(SH_PRIVILEGED)?shgd->euserid:shgd->userid,t,hp->tty,size,buff,0);
-+ sfprintf(hp->auditfp,"%u;%llu;%s;%*s%c",sh_isoption(SH_PRIVILEGED)?shgd->euserid:shgd->userid,t,hp->tty,size,buff,0);
- sfsync(hp->auditfp);
- }
-
No comments:
Post a Comment