diff options
author | Cy Schubert <cy@FreeBSD.org> | 2020-02-22 22:38:42 +0000 |
---|---|---|
committer | Cy Schubert <cy@FreeBSD.org> | 2020-02-22 22:38:42 +0000 |
commit | f812380a4e1e314cfcbb029ba779d61bf23a5865 (patch) | |
tree | 2755806664d52db8925f844c591522fdf1c9c2df /shells/ksh93-devel | |
parent | AT&T AST (att/ast) on github has rewound their repo back to ksh93u+. See (diff) |
AT&T AST (att/ast) on github has rewound their repo back to ksh93u+. See
https://github.com/att/ast/issues/1464 and
https://github.com/att/ast/issues/1466.
The reason for the rewind back to 93u+ instead of 93v- was that it was an
abandoned unstable buggy unfinished beta. A full explanation of this can be
found here, https://github.com/att/ast/issues/1466#issuecomment-589942449.
At present ksh93-devel will track att/ast until development shifts to
the new ksh-community repo on github.
Notes
Notes:
svn path=/head/; revision=526860
Diffstat (limited to 'shells/ksh93-devel')
16 files changed, 318 insertions, 126 deletions
diff --git a/shells/ksh93-devel/Makefile b/shells/ksh93-devel/Makefile index e82b9ba18990..a62ee1686d79 100644 --- a/shells/ksh93-devel/Makefile +++ b/shells/ksh93-devel/Makefile @@ -1,52 +1,80 @@ # $FreeBSD$ +# Make sure that your configuration DOES NOT set ANY gcc-related +# variables. ksh93 will not compile if you set even the seemingly +# most unrelated variable related to gcc configuration. This means +# especially any flag which attempts to set the cputype. Setting the +# cputype does absolutely nothing except cause systems to fail in +# horrible ways. For any modern processor, setting the cputype only +# serves to expose gcc bugs and does nothing to speed up any known +# program. If you are really unconvinced, go ahead but do not +# complain to me about it. + PORTNAME= ksh93 PORTVERSION= ${AST_COMMIT_DATE} CATEGORIES= shells -PKGNAMESUFFIX= -devel +DIST_SUBDIR= ksh93 MAINTAINER= cy@FreeBSD.org COMMENT= Development branch of AT&T KornShell 93 LICENSE= EPL -USES= compiler:c11 meson ninja python:build +HASH= 0be82553 +AST_COMMIT_DATE= 2020.02.22 + +BROKEN_aarch64= Fails to compile: needs sbrk -HASH= 8cf92b28 -AST_COMMIT_DATE= 2020.02.07 +USES= compiler:c11 USE_GITHUB= yes GH_ACCOUNT= att GH_PROJECT= ast GH_TAGNAME= ${HASH} +# IMPORTANT: Disabling conflicts, i.e. -DDISABLE_CONFLICTS will result in +# arcane build failures due to already installed ksh/ksh93 in +# $PATH. KSH_CONFLICTS= pdksh-* KSH93_CONFLICTS= ksh93-2* ast-ksh-* -MESON_BUILD_DIR= build - -OPTIONS_DEFAULT= KSH93 +OPTIONS_DEFAULT= KSH93 EXAMPLES +OPTIONS_DEFINE= EXAMPLES STATIC OPTIONS_SINGLE= BIN_KSH OPTIONS_SINGLE_BIN_KSH= KSH KSH93 KSH_DESC= Install to ${PREFIX}/bin/ksh KSH93_DESC= Install to ${PREFIX}/bin/ksh93 -KSH93_EXTRA_PATCHES= ${FILESDIR}/extra-patch-install-as-ksh93 \ - ${FILESDIR}/extra-patch-install-as-ksh93-doc +CFLAGS+= -DMAP_TYPE +LDFLAGS+= -lm +MAKE_ENV= CCFLAGS="-Wno-unused-value -Wno-parentheses -Wno-logical-op-parentheses" CFLAGS="${CFLAGS}" + +STATIC_MAKE_ENV= LDFLAGS+=-static KSH_PLIST_SUB= 93="" KSH93_PLIST_SUB= 93="93" .include <bsd.port.options.mk> -post-patch: - @${REINPLACE_CMD} -e '/for name in/ s|python.*|${PYTHON_CMD}|g' ${WRKSRC}/scripts/python.sh - @${REINPLACE_CMD} -e 's|SF_FLAGS|SFIO_FLAGS|g' ${WRKSRC}/src/lib/libast/include/sfio*.h ${WRKSRC}/src/lib/libast/sfio/*.c .if ${PORT_OPTIONS:MKSH93} - @${MV} ${WRKSRC}/src/cmd/ksh93/docs/ksh.1 ${WRKSRC}/src/cmd/ksh93/docs/ksh93.1 -.endif -.if ${PORT_OPTIONS:MKSH} - @# Keep portlint happy +PNAME= ksh93 +.else +PNAME= ksh .endif +post-patch: + @${REINPLACE_CMD} -e 's|SF_FLAGS|SFIO_FLAGS|g' ${WRKSRC}/src/lib/libast/include/sfio*.h ${WRKSRC}/src/lib/libast/sfio/*.c + +do-build: + @cd ${WRKSRC}/ && ${SETENV} -i ${MAKE_ENV} ${SH} bin/package flat make ksh93 + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/bin/ksh ${STAGEDIR}${PREFIX}/bin/${PNAME} + ${INSTALL_MAN} ${WRKSRC}/man/man1/sh.1 ${STAGEDIR}${MAN1PREFIX}/man/man1/${PNAME}.1 + ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/ + cd ${WRKSRC}/fun/ && ${INSTALL_SCRIPT} dirs popd pushd ${STAGEDIR}${EXAMPLESDIR}/ + +do-test: + cd ${WRKSRC}/src/cmd/ksh93/tests/ && ${SETENV} SHELL=${WRKSRC}/bin/ksh ${WRKSRC}/bin/ksh shtests + .include <bsd.port.mk> diff --git a/shells/ksh93-devel/distinfo b/shells/ksh93-devel/distinfo index 471e69486bd0..38761bd3b770 100644 --- a/shells/ksh93-devel/distinfo +++ b/shells/ksh93-devel/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1581102021 -SHA256 (att-ast-2020.02.07-8cf92b28_GH0.tar.gz) = bbff37f478c9dedd4f52ccf27ab3a90bb17f9fb0458ef11a1ac5316097df9278 -SIZE (att-ast-2020.02.07-8cf92b28_GH0.tar.gz) = 2229786 +TIMESTAMP = 1581223383 +SHA256 (ksh93/att-ast-2020.02.08-0be82553_GH0.tar.gz) = a78f2930e9daebd3950044eb899dfbcae67ac8e2599346aa25c2fd6fb8097bf0 +SIZE (ksh93/att-ast-2020.02.08-0be82553_GH0.tar.gz) = 12960534 diff --git a/shells/ksh93-devel/files/extra-patch-install-as-ksh93 b/shells/ksh93-devel/files/extra-patch-install-as-ksh93 deleted file mode 100644 index 0ef50874bd81..000000000000 --- a/shells/ksh93-devel/files/extra-patch-install-as-ksh93 +++ /dev/null @@ -1,25 +0,0 @@ ---- src/cmd/ksh93/meson.build.orig 2020-01-30 18:34:35.000000000 -0800 -+++ src/cmd/ksh93/meson.build 2020-01-30 20:47:13.410465000 -0800 -@@ -26,7 +26,7 @@ - dependencies: [libm_dep, libexecinfo_dep, libdl_dep, libsocket_dep, libnsl_dep], - install: get_option('default_library') == 'shared') - --ksh93_exe = executable('ksh', ['sh/pmain.c'], c_args: shared_c_args, -+ksh93_exe = executable('ksh93', ['sh/pmain.c'], c_args: shared_c_args, - include_directories: [configuration_incdir, ksh93_incdir], - link_with: [libksh, libast, libcmd, libdll], - dependencies: [libm_dep, libexecinfo_dep, libdl_dep], -@@ -34,11 +34,11 @@ - - # Create a symlink for a restricted version of the ksh shell. - create_rksh_symlink = find_program(source_dir + '/scripts/create_rksh_symlink') --rksh93_exe = custom_target('rksh', input: ksh93_exe, output: 'rksh', build_by_default: true, -+rksh93_exe = custom_target('rksh', input: ksh93_exe, output: 'rksh93', build_by_default: true, - install: true, install_mode: 'rwxr-xr-x', install_dir: install_prefix + '/bin', - command: [create_rksh_symlink, '@INPUT@']) - --shcomp_exe = executable('shcomp', ['sh/shcomp.c'], c_args: shared_c_args, -+shcomp_exe = executable('shcomp93', ['sh/shcomp.c'], c_args: shared_c_args, - include_directories: [configuration_incdir, ksh93_incdir], - link_with: [libksh, libast, libcmd, libdll], - dependencies: [libm_dep, libexecinfo_dep, libdl_dep, libsocket_dep, libnsl_dep], diff --git a/shells/ksh93-devel/files/extra-patch-install-as-ksh93-doc b/shells/ksh93-devel/files/extra-patch-install-as-ksh93-doc deleted file mode 100644 index 35e8b7d6dd8e..000000000000 --- a/shells/ksh93-devel/files/extra-patch-install-as-ksh93-doc +++ /dev/null @@ -1,10 +0,0 @@ ---- src/cmd/ksh93/docs/meson.build.orig 2019-09-16 17:08:04.000000000 -0700 -+++ src/cmd/ksh93/docs/meson.build 2019-09-17 12:15:14.321848000 -0700 -@@ -3,6 +3,6 @@ - # default man page directory: /usr/local/share/man/man1. The man pages for individual builtins will - # be installed in /usr/local/share/ksh/man. - # --install_man('ksh.1', install_mode: 'rw-r--r--') -+install_man('ksh93.1', install_mode: 'rw-r--r--') - - # See also scripts/install_aux_files.sh which takes care of installing the private man pages. diff --git a/shells/ksh93-devel/files/patch-scripts_builtin_documentation.sh b/shells/ksh93-devel/files/patch-scripts_builtin_documentation.sh deleted file mode 100644 index d89bb531bcad..000000000000 --- a/shells/ksh93-devel/files/patch-scripts_builtin_documentation.sh +++ /dev/null @@ -1,10 +0,0 @@ ---- scripts/builtin_documentation.sh.orig 2019-08-30 05:32:36.000000000 -0700 -+++ scripts/builtin_documentation.sh 2019-08-30 12:40:24.125856000 -0700 -@@ -8,6 +8,6 @@ - cmd_name=$(basename "$in_file" .1) - [ "$cmd_name" = ksh ] && continue - echo "const char sh_opt${cmd_name}[] =" -- sed -e 's/\(.*\)/ "\1\\n"/' < "$in_file" -+ sed -e 's/"//g;s/\(.*\)/ "\1\\n"/' < "$in_file" - echo ";" - done diff --git a/shells/ksh93-devel/files/patch-src_cmd_std_features_procfs b/shells/ksh93-devel/files/patch-src_cmd_std_features_procfs new file mode 100644 index 000000000000..7fc3c1fc8113 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_cmd_std_features_procfs @@ -0,0 +1,36 @@ +--- src/cmd/std/features/procfs.orig 2017-11-30 22:35:04 UTC ++++ src/cmd/std/features/procfs +@@ -1,6 +1,6 @@ + hdr kvm,procinfo,pstat,asm/param + +-sys procfs,sysctl ++sys procfs,sysctl,user + + lib getprocs + lib kvm_open,kvm_getprocs kvm.h sys/time.h sys/param.h sys/proc.h sys/sysctl.h -lkvm +@@ -10,7 +10,11 @@ mem extern_proc.p_pid,extern_proc.p_star + mem procsinfo64.pi_pri procinfo.h + mem prpsinfo.pr_clname,prpsinfo.pr_cstime,prpsinfo.pr_cstime.tv_sec,prpsinfo.pr_ctime,prpsinfo.pr_cutime,prpsinfo.pr_gid,prpsinfo.pr_lttydev,prpsinfo.pr_ntpid,prpsinfo.pr_pgid,prpsinfo.pr_pgrp,prpsinfo.pr_psargs,prpsinfo.pr_refcount,prpsinfo.pr_rssize,prpsinfo.pr_sid,prpsinfo.pr_sonproc,prpsinfo.pr_start,prpsinfo.pr_start.tv_sec,prpsinfo.pr_starttime,prpsinfo.pr_starttime.tv_sec,prpsinfo.pr_state,prpsinfo.pr_stime,prpsinfo.pr_tgrp,prpsinfo.pr_time,prpsinfo.pr_time.tv_sec,prpsinfo.pr_utime,prpsinfo.pr_zomb,prpsinfo.pr_pctcpu,prpsinfo.pr_cpu,prpsinfo.pr_lwp.pr_pctcpu,prpsinfo.pr_lwp.pr_cpu -D_STRUCTURED_PROC -Dprpsinfo=psinfo sys/types.h sys/procfs.h + ++num PIOCPSINFO ++ + typ struct.prpsinfo -D_STRUCTURED_PROC -Dprpsinfo=psinfo sys/types.h sys/procfs.h ++typ struct.kinfo_proc sys/types.h sys/procfs.h sys/user.h ++typ struct.kp_proc sys/types.h sys/procfs.h sys/user.h + + tst lib_info note{ info(2) kernel table api }end link{ + #include <info.h> +@@ -587,11 +591,11 @@ cat{ + #define PSS_METHOD PSS_METHOD_getprocs + #endif + +-#if !PSS_METHOD && defined(_PS_dir) ++#if !PSS_METHOD && defined(_PS_dir) && (_PS_scan_binary || _num_PIOCPSINFO) + #define PSS_METHOD PSS_METHOD_procfs + #endif + +-#if !PSS_METHOD && _hdr_kvm && _sys_sysctl && _lib_kvm_open && _lib_kvm_getprocs ++#if !PSS_METHOD && _hdr_kvm && _sys_sysctl && _lib_kvm_open && _lib_kvm_getprocs && _typ_struct_kinfo_proc && _typ_struct_kp_proc + #define PSS_METHOD PSS_METHOD_kvm + #endif + diff --git a/shells/ksh93-devel/files/patch-src_cmd_std_pss-kvm.c b/shells/ksh93-devel/files/patch-src_cmd_std_pss-kvm.c new file mode 100644 index 000000000000..4bd842573d48 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_cmd_std_pss-kvm.c @@ -0,0 +1,12 @@ +--- src/cmd/std/pss-kvm.c.orig 2017-11-30 22:35:04 UTC ++++ src/cmd/std/pss-kvm.c +@@ -43,6 +43,9 @@ NoN(pss_kvm) + #if _sys_proc + #include <sys/proc.h> + #endif ++#if _sys_user ++#include <sys/user.h> ++#endif + #include <sys/sysctl.h> + #include <sys/tty.h> + diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_features_mmap b/shells/ksh93-devel/files/patch-src_lib_libast_features_mmap new file mode 100644 index 000000000000..9690f24cc355 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_features_mmap @@ -0,0 +1,36 @@ +--- src/lib/libast/features/mmap.orig 2020-02-08 10:39:38.000000000 -0800 ++++ src/lib/libast/features/mmap 2020-02-08 20:49:37.791733000 -0800 +@@ -16,14 +16,7 @@ + + #define Failed(file) (remove(file),1) + +- int +- #if _STD_ +- main(int argc, char** argv) +- #else +- main(argc,argv) +- int argc; +- char** argv; +- #endif ++ int main(int argc, char** argv) + { + caddr_t mm; + char *t, *u, *f; +@@ -326,17 +319,12 @@ + cat{ + + /* some systems get it wrong but escape concise detection */ +- #ifndef _NO_MMAP + #if __CYGWIN__ + #define _NO_MMAP 1 + #endif +- #endif + + #if _NO_MMAP + #undef _lib_mmap + #undef _lib_mmap64 +- #undef _mmap_anon +- #undef _mmap_devzero +- #undef _mmap_worthy + #endif + }end diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_features_standards b/shells/ksh93-devel/files/patch-src_lib_libast_features_standards new file mode 100644 index 000000000000..166362409d66 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_features_standards @@ -0,0 +1,23 @@ +--- src/lib/libast/features/standards.orig 2020-02-08 10:39:38.000000000 -0800 ++++ src/lib/libast/features/standards 2020-02-08 21:58:23.687268000 -0800 +@@ -1,5 +1,19 @@ + set stdio +-if tst note{ _ALL_SOURCE & _POSIX_SOURCE & _POSIX_C_SOURCE & _XOPEN_SOURCE & __EXTENSIONS__ works }end compile{ ++# In FreeBSD, definitions like _POSIX_SOURCE and such are used to *limit* ++# functionality to known API; they don't enable anything. The general intent in ++# BSD is to enable everything by default (effectively, providing the ++# _KITCHEN_SINK_SOURCE mentioned below). So we look for that here, but stay ++# careful that we don't get fooled by presence of FreeBSD that underpins some ++# subsystems in Mac OS X; there are other Apple-specific portability hacks ++# elsewhere we should not interfere with. ++if tst note{ FreeBSD }end compile{ ++ #include <sys/param.h> ++ #if !defined(__FreeBSD__) || defined(APPLE) ++ #error not a FreeBSD system ++ #endif ++ }end { ++ } ++elif tst note{ _ALL_SOURCE & _POSIX_SOURCE & _POSIX_C_SOURCE & _XOPEN_SOURCE & __EXTENSIONS__ works }end compile{ + #define _ALL_SOURCE 1 + #define _POSIX_SOURCE 1 + #define _POSIX_C_SOURCE 21000101L diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_features_vmalloc b/shells/ksh93-devel/files/patch-src_lib_libast_features_vmalloc new file mode 100644 index 000000000000..a90f1e720ef3 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_features_vmalloc @@ -0,0 +1,10 @@ +--- src/lib/libast/features/vmalloc.orig 2016-02-28 17:09:23 UTC ++++ src/lib/libast/features/vmalloc +@@ -217,7 +217,4 @@ cat{ + #if _mmap_anon + #define _mem_mmap_anon 1 + #endif +- #if _mmap_devzero +- #define _mem_mmap_zero 1 +- #endif + }end diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_features_wchar b/shells/ksh93-devel/files/patch-src_lib_libast_features_wchar new file mode 100644 index 000000000000..d3dca1657a59 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_features_wchar @@ -0,0 +1,10 @@ +--- src/lib/libast/features/wchar.orig 2017-11-30 22:35:04 UTC ++++ src/lib/libast/features/wchar +@@ -6,6 +6,7 @@ set include . + cat{ + #ifndef _AST_WCHAR_H + #define _AST_WCHAR_H 1 ++ #define _STDFILE_DECLARED + }end + + lib mbstowcs,wctomb,wcscmp,wcscoll,wcslen,wcstombs,wcsxfrm,wcwidth stdlib.h stdio.h wchar.h diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_port_astcopy.c b/shells/ksh93-devel/files/patch-src_lib_libast_port_astcopy.c new file mode 100644 index 000000000000..c0bef96c2a0e --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_port_astcopy.c @@ -0,0 +1,17 @@ +--- src/lib/libast/port/astcopy.c.orig 2016-02-28 17:09:23 UTC ++++ src/lib/libast/port/astcopy.c +@@ -30,14 +30,10 @@ + #include <ast.h> + #include <ast_mmap.h> + +-#if _mmap_worthy > 1 +- + #include <ls.h> + + #define MAPSIZE (1024*256) + +-#endif +- + #undef BUFSIZ + #define BUFSIZ 4096 + diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_sfio_sfhdr.h b/shells/ksh93-devel/files/patch-src_lib_libast_sfio_sfhdr.h new file mode 100644 index 000000000000..ed668e576208 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_sfio_sfhdr.h @@ -0,0 +1,12 @@ +--- src/lib/libast/sfio/sfhdr.h.orig 2016-02-28 17:09:23 UTC ++++ src/lib/libast/sfio/sfhdr.h +@@ -209,9 +209,6 @@ + + /* see if we can use memory mapping for io */ + #if _LARGEFILE64_SOURCE && !_lib_mmap64 +-#undef _mmap_worthy +-#endif +-#if !_mmap_worthy + #undef _hdr_mman + #undef _sys_mman + #endif diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_sfio_sfseek.c b/shells/ksh93-devel/files/patch-src_lib_libast_sfio_sfseek.c new file mode 100644 index 000000000000..41e5cd15271a --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_sfio_sfseek.c @@ -0,0 +1,24 @@ +--- src/lib/libast/sfio/sfseek.c.orig 2020-02-08 10:39:38.000000000 -0800 ++++ src/lib/libast/sfio/sfseek.c 2020-02-09 20:01:11.420655000 -0800 +@@ -204,18 +204,9 @@ + #ifdef MAP_TYPE + if(f->bits&SF_MMAP) + { /* if mmap is not great, stop mmaping if moving around too much */ +-#if _mmap_worthy < 2 +- if((f->next - f->data) < ((f->endb - f->data)/4) ) +- { SFSETBUF(f,(Void_t*)f->tiny,(size_t)SF_UNBOUND); +- hardseek = 1; /* this forces a hard seek below */ +- } +- else +-#endif +- { /* for mmap, f->here can be virtual except for hardseek */ +- newpos(f,p); +- if(!hardseek) +- goto done; +- } ++ newpos(f,p); ++ if(!hardseek) ++ goto done; + } + #endif + diff --git a/shells/ksh93-devel/files/patch-src_lib_libast_string_strexpr.c b/shells/ksh93-devel/files/patch-src_lib_libast_string_strexpr.c new file mode 100644 index 000000000000..d4f706b9b147 --- /dev/null +++ b/shells/ksh93-devel/files/patch-src_lib_libast_string_strexpr.c @@ -0,0 +1,87 @@ +--- src/lib/libast/string/strexpr.c.orig 2017-11-30 22:35:04 UTC ++++ src/lib/libast/string/strexpr.c +@@ -44,7 +44,7 @@ + #define peekchr(ex) (*(ex)->nextchr) + #define ungetchr(ex) ((ex)->nextchr--) + +-#define error(ex,msg) return(seterror(ex,msg)) ++#define err(ex,msg) return(seterror(ex,msg)) + + typedef struct /* expression handle */ + { +@@ -87,7 +87,7 @@ expr(register Expr_t* ex, register int p + case 0: + ungetchr(ex); + if (!precedence) return(0); +- error(ex, "more tokens expected"); ++ err(ex, "more tokens expected"); + case '-': + n = -expr(ex, 13); + break; +@@ -113,17 +113,17 @@ expr(register Expr_t* ex, register int p + case 0: + goto done; + case ')': +- if (!precedence) error(ex, "too many )'s"); ++ if (!precedence) err(ex, "too many )'s"); + goto done; + case '(': + n = expr(ex, 1); + if (getchr(ex) != ')') + { + ungetchr(ex); +- error(ex, "closing ) expected"); ++ err(ex, "closing ) expected"); + } + gotoperand: +- if (operand) error(ex, "operator expected"); ++ if (operand) err(ex, "operator expected"); + operand = 1; + continue; + case '?': +@@ -140,7 +140,7 @@ expr(register Expr_t* ex, register int p + if (getchr(ex) != ':') + { + ungetchr(ex); +- error(ex, ": expected for ? operator"); ++ err(ex, ": expected for ? operator"); + } + if (n) + { +@@ -189,7 +189,7 @@ expr(register Expr_t* ex, register int p + break; + case '=': + case '!': +- if (peekchr(ex) != '=') error(ex, "operator syntax error"); ++ if (peekchr(ex) != '=') err(ex, "operator syntax error"); + if (precedence > 7) goto done; + getchr(ex); + x = expr(ex, 8); +@@ -237,7 +237,7 @@ expr(register Expr_t* ex, register int p + if (precedence > 11) goto done; + x = expr(ex, 12); + if (c == '*') n *= x; +- else if (x == 0) error(ex, "divide by zero"); ++ else if (x == 0) err(ex, "divide by zero"); + else if (c == '/') n /= x; + else n %= x; + break; +@@ -246,15 +246,15 @@ expr(register Expr_t* ex, register int p + pos = --ex->nextchr; + if (isdigit(c)) n = strton(ex->nextchr, &ex->nextchr, NiL, 0); + else if (ex->convert) n = (*ex->convert)(ex->nextchr, &ex->nextchr, ex->handle); +- if (ex->nextchr == pos) error(ex, "syntax error"); ++ if (ex->nextchr == pos) err(ex, "syntax error"); + goto gotoperand; + } + if (ex->errmsg) return(0); +- if (!operand) error(ex, "operand expected"); ++ if (!operand) err(ex, "operand expected"); + } + done: + ungetchr(ex); +- if (!operand) error(ex, "operand expected"); ++ if (!operand) err(ex, "operand expected"); + return(n); + } + diff --git a/shells/ksh93-devel/pkg-plist b/shells/ksh93-devel/pkg-plist index 0e4d7d5e0b2f..86dc0057f028 100644 --- a/shells/ksh93-devel/pkg-plist +++ b/shells/ksh93-devel/pkg-plist @@ -1,64 +1,6 @@ @shell bin/ksh%%93%% -@shell bin/rksh%%93%% -bin/shcomp%%93%% man/man1/ksh%%93%%.1.gz -share/ksh/config.ksh -share/ksh/functions/cd -share/ksh/functions/_ksh_print_help -share/ksh/functions/dirs -share/ksh/functions/man -share/ksh/functions/mcd -share/ksh/functions/popd -share/ksh/functions/pushd -share/ksh/man/man1/alias.1 -share/ksh/man/man1/basename.1 -share/ksh/man/man1/bg.1 -share/ksh/man/man1/break.1 -share/ksh/man/man1/builtin.1 -share/ksh/man/man1/cat.1 -share/ksh/man/man1/cd.1 -share/ksh/man/man1/chmod.1 -share/ksh/man/man1/cmp.1 -share/ksh/man/man1/command.1 -share/ksh/man/man1/compgen.1 -share/ksh/man/man1/complete.1 -share/ksh/man/man1/continue.1 -share/ksh/man/man1/cut.1 -share/ksh/man/man1/dirname.1 -share/ksh/man/man1/disown.1 -share/ksh/man/man1/echo.1 -share/ksh/man/man1/enum.1 -share/ksh/man/man1/eval.1 -share/ksh/man/man1/exec.1 -share/ksh/man/man1/exit.1 -share/ksh/man/man1/export.1 -share/ksh/man/man1/fg.1 -share/ksh/man/man1/head.1 -share/ksh/man/man1/hist.1 -share/ksh/man/man1/jobs.1 -share/ksh/man/man1/kill.1 -share/ksh/man/man1/let.1 -share/ksh/man/man1/logname.1 -share/ksh/man/man1/mkdir.1 -share/ksh/man/man1/print.1 -share/ksh/man/man1/printf.1 -share/ksh/man/man1/pwd.1 -share/ksh/man/man1/read.1 -share/ksh/man/man1/readonly.1 -share/ksh/man/man1/return.1 -share/ksh/man/man1/shcomp.1 -share/ksh/man/man1/shift.1 -share/ksh/man/man1/sleep.1 -share/ksh/man/man1/source.1 -share/ksh/man/man1/sync.1 -share/ksh/man/man1/test.1 -share/ksh/man/man1/times.1 -share/ksh/man/man1/trap.1 -share/ksh/man/man1/ulimit.1 -share/ksh/man/man1/umask.1 -share/ksh/man/man1/unalias.1 -share/ksh/man/man1/uname.1 -share/ksh/man/man1/unset.1 -share/ksh/man/man1/wait.1 -share/ksh/man/man1/wc.1 -share/ksh/man/man1/whence.1 +share/examples/ksh93/dirs +share/examples/ksh93/popd +share/examples/ksh93/pushd + |