pkgsrc/shells/mksh/Makefile

42 lines
1.1 KiB
Makefile
Raw Normal View History

2012-09-12 01:19:33 +02:00
# $NetBSD: Makefile,v 1.20 2012/09/11 23:25:08 asau Exp $
Update mksh to R40f. mksh R40f fixes a critical bug as well as this: [tg, RT] Implement fcntl(2)-based advisory locking as an alternative iff flock(2) is not found (LP: #912691); keep trying in the face of EINTR [tg] Fix severe regression wrt. initialising tty(4) states [tg] Improve testsuite, build-time checks and debugging output [tg, RT, winstonw] Improve portability to BeOS (works), Cygwin (good), Dell UNIX (works somewhat, but not with gcc), LynxOS (works somewhat), NeXTstep (works but not OpenStep 4.2), USL C compiler, SCO OpenServer (good), SCO UnixWare (good), Plan 9 (still broken), Syllable Desktop (broken?) [tg] rlim_t is supposed to be unsigned [tg] Some code, warning and spelling cleanup [tg] New Build.sh environment configurable: AWK (= awk) [tg, DONG-DONG YANG] Add safety net in the Emacs line editing code [tg] No longer rely on env(1), id(1), printf(1) in the testsuite, and strcasecmp(3), strcasestr(3), strncasecmp(3) in the code [tg, stsc, RT] Reduce system requirements of check.pl further mksh R40e is another must-have bugfix update: [tg, Jilles Tjoelker] skip readonly check in unevaluated ternary twig [tg, anonymous] fix all remaining ifs.sh testcases [tg] No longer try to build with GCC and C99 extensions [tg, Jilles Tjoelker] Do not expand aliases in COMSUB twice [tg] Honour UTF-8 multi-byte character boundaries when doing partial tab-completion insertions (LP: #909025) to fix RedHat BZ#745702 [tg] Fix R40 (BZ#496791) regression with IOACT in TIF (LP: #907224) [tg, ft] Darn persistent history code worst offenders (LP: #906914) [tg] Fix some gc-sections, GCC and Clang/scan-build warnings/issues [tg, 28C3] dot.mkshrc hash functions: partially address LP: #909818 [tg] Only compile divmod(0x80000000, -1) code in when not unneeded [tg, RT] Move mirtoconf checks and INCLUDES_ONLY parts of sh.h around to ensure prerequisites are always available [tg, RT, ir0nh34d] Pass mksh.exe to testsuite, if such thing is generated, and deal with Cygwin passing just "mksh" in argv[0] in such cases [tg] Imply -DMKSH_ASSUME_UTF8=0 on MSYS; optimise checks [tg, Jb_boin] Fix regression introduced in R35b by jaredy's security patch where TTIME trashed a non-TCOM string argument (e.g. in TFOR) [tg] Better support for tcc; fix GCCism that accidentally crept in [tg] Deal with UTF-8 when reporting jobs' commands [RT] Add SkyOS to known OS list [tg, RT] Support Minix in its variants Minix 3 and Ninix 3 better [tg] Drop some Android-specific unused code (lsmod builtin) [tg, RT, lewellyn] Support QNX and various versions of BSD/OS better [tg] More code cleanup and new developer-only debugging functions [tg, Andrew Kudryashov] Fix some tab completion related escaping bugs [tg, draenog] Honour COLUMNS and LINES from the environment in scripts [tg, winstonw] The sleep built-in utility now blocks more signals [tg] Warn when using another deprecated function that will be removed
2012-05-13 20:46:35 +02:00
DISTNAME= mksh-R40f
PKGNAME= ${DISTNAME:S/-R/-/}
CATEGORIES= shells
MASTER_SITES= http://www.mirbsd.org/MirOS/dist/mir/mksh/ \
http://pub.allbsd.org/MirOS/dist/mir/mksh/
EXTRACT_SUFX= .cpio.gz
MAINTAINER= ahoka@NetBSD.org
HOMEPAGE= http://mirbsd.de/mksh
COMMENT= MirBSD Korn Shell
Update to mksh R38b: mksh R38b fixes the following problems: * [André Wösten] Add __NO_EXT_QNX to avoid picking up the wrong waitfor() from <libutil.h> in (while porting to) QNX 6.4 * [tg] Plug memory corruption issue introduced in R38 * [tg] Amend dot.mkshrc with a base64 en-/decoder in shell * [tg] Import a manpage fix via OpenBSD from Alan R. S. Bueno mksh R38 comes with these changes and fixes applied: * [tg] Improve regression test output debugging * [tg] Fix <libutil.h> prerequisites on MidnightBSD in mirtoconf * [tg] Mention that RedHat BZ#496791 cannot currently be fixed in the manpage by discouraging use of apostrophes in comments in comsubs; add appropriate (expected-fail) regression tests * [tg] Sync with OpenBSD ksh (mostly a no-op) * [James Butler] Add search-history-up and search-history-down keybindings (tcsh-like) to the Emacs command line editing mode * [tg] Bind new search-history-{up,down} to ANSI PgUp and PgDn keys * [tg] Document ANSI default keybindings (↑↓←→ Home End Del PgUp PgDn) in the mksh(1) manual page as well * [tg] Optimise internal UTF-8 handling code for size and reusability * [tg] Incompatible change: ${foo:1:2} and ${#foo} now operate on characters, not on bytes. Characters are octets (set +U) or (utf8-mode) MirOS OPTU-8 multibyte characters (set -U) * [tg] Improve regression tests relating to ${foo:1:2} and ${#foo} and let wc=1#x and utf8-mode * [tg] Use per-file copyright notices, move global text to manpage * [tg] Expose new MKSH_MIDNIGHTBSD01ASH_COMPAT ifdef; change it to only trigger if FPOSIX (or MKSH_BINSHREDUCED and /bin/sh) * [tg] Remove already-dead “#if 0” style debugging code * [tg] Change some code into a more portable fashion, optimise * [tg] Allow [[ $foo ]] (ksh93 extension) mentioned by pgas * [tg] Clean up mksh and the contributed arc4random.c for some conversion, enum and other warnings for gcc-snapshot trunk r147610 * [tg] Ensure no function uses more than 768 bytes of stack either * [tg, wbx] Add extension to make “!string” lines work like in GNU bash
2009-06-03 15:46:03 +02:00
LICENSE= miros
WRKSRC= ${WRKDIR}/mksh
WRKBUILD?= ${WRKSRC}
PKG_INSTALLATION_TYPES= pkgviews overwrite
PKG_SHELL= bin/mksh
LIBS.Interix+= -lcrypt
INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 share/examples/mksh
do-build:
cd ${WRKBUILD} && LIBS=${LIBS:Q} CC=${CC:Q} CFLAGS=${CFLAGS:Q} \
CPPFLAGS=${CPPFLAGS:Q} LDFLAGS=${LDFLAGS:Q} \
${TOOLS_SHELL} ${WRKSRC}/Build.sh -r
do-install:
${INSTALL_PROGRAM} ${WRKBUILD}/mksh ${DESTDIR}${PREFIX}/bin/mksh
${INSTALL_MAN} ${WRKSRC}/mksh.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1/
${INSTALL_DATA} ${WRKSRC}/dot.mkshrc ${DESTDIR}${PREFIX}/share/examples/mksh/
# Uncomment this if you want to run the regression tests
#USE_TOOLS+= perl
#do-test:
# ${WRKBUILD}/test.sh -v
.include "../../mk/bsd.pkg.mk"