Up to [cvs.NetBSD.org] / pkgsrc / shells / zsh
Request diff between arbitrary revisions
Keyword substitution: kv
Default branch: MAIN
Completely overhaul the zsh package. - Get rid of useless Makefile.common and pointless variables since there is no longer a zsh-current package. - Remove non-standard per-OS non-checksummed patch file in FILESDIR. Integrate it correctly in the normal way. - Ensure our patched configure.ac is actually regenerated. - Use REPLACE_INTERPRETER instead of homegrown subst replacements. - Remove esoteric and fragile configuration variables, a bunch of legacy OS based options, and simply depend correctly on terminfo and curses. - Remove custom test targets and requirements for root access, the test suite works fine as a non-root user and can be done in the normal way. - Use options.mk - Set maintainer to pkgsrc-users, uebayasi resigned. Fixes build on at least SunOS. Tested on SunOS, Darwin, NetBSD (with and without the "static" option), and Linux.
pkglint whitespace
Unconfuse pkglint.
Now that _STRIPFLAG_INSTALL is disabled by default on Darwin, remove manual settings of INSTALL_UNSTRIPPED=yes for Darwin in individual packages.
update sha1 checksums.
Update to 5.1 pkgsrc changes: removed patch: patch-Completion_Unix_Command__du patch-Completion_Unix_Command__sort patch-Src_builtin.c patch-Test_B03print.ztst quote from zsh-5.1/ChangeLog: * 36120: Completion/Unix/Command/_sort: Fix syntax error * 35467: Completion/Unix/Command/_du: complete files for non-GNU du * 35412: Src/builtin.c, Test/B03print.ztst: fix for - flag when formating strings with printf that was broken in 34841 separate a patch ( $ mv patches/patch-ac files/patch-ac ) zsh-5.1/NEWS: Changes from 5.0.8 to 5.1 ------------------------- The builtins declare, export, local, readonly and typeset now have corresponding reserved words. When used in this form, the builtin syntax is extended so that assignments following the reserved word are treated similarly to assignments that appear at the start of the command line. For example, local scalar=`echo one word` array=(several words) creates a local "scalar" containing the text "one word" and an array "array" containing the words "several" "words". - The print builtin has new options -x and -X to expand tabs. - Several new command completions and numerous updates to others. - Options to "fc" to segregate internal and shared history. - All emulations including "sh" use multibyte by default; several repairs to multibyte handling. - ZLE supports "bracketed paste" mode to avoid interpreting pasted newlines as accept-line. Pastes can be highlighted for visibility and to make it more obvious whether accept-line has occurred. - Improved (though still not perfect) POSIX compatibility for getopts builtin when POSIX_BUILTINS is set. - New setopt APPEND_CREATE for POSIX-compatible NO_CLOBBER behavior. - Completion of date values now displays in a calendar format when the complist module is available. Controllable by zstyle. - New parameter UNDO_LIMIT_NO for more control over ZLE undo repeat. - Several repairs/improvements to the contributed narrow-to-region ZLE function. - Many changes to child-process and signal handling to eliminate race conditions and avoid deadlocks on descriptor and memory management. - New builtin sysopen in zsh/system module for detailed control of file descriptor modes. zsh-5.1/README: Incompatibilites between 5.0.8 and 5.1 -------------------------------------- The default behaviour when text is pasted into an X Windows terminal has changed significantly (unless you are using a very old terminal emulator that doesn't support this mode). Now, the new "bracketed paste mode" treats all the pasted text as literal characters. This means, in particular, that a newline is simply inserted as a visible newline; you need to hit Return on the keyboard to execute the pasted text in one go. See the description of zle_bracketed_paste in the zshparams manual for more. "unset zle_bracketed_paste" restores the previous behaviour. As noted in NEWS, the builtins declare, export, float, integer, local, readonly and typeset now have corresponding reserved words that provide true assignment semantics instead of an approximation by means of normal command line arguments. It is hoped that this additional consistency provides a more natural interface. However, compatbility with older versions of zsh can be obtained by turning off the reserved word interface, exposing the builtin interface: disable -r declare export float integer local readonly typeset This is also necessary in the unusual eventuality that the builtins are to be overridden by shell functions, since reserved words take precedence over functions.
Convert ZSH_STATIC to PKG_OPTIONS.zsh=static.
Add USE_LANGUAGES, package requires c99 support.
Remove pkgviews: don't set PKG_INSTALLATION_TYPES in Makefiles.
Update to 5.0.5 * Fix build on Debian GNU/kFreeBSD 7.3 * Update MASTER_SITES Changelog: This is version 5.0.5 of the shell. This is a stable release. There are minor new features as well as bug fixes since 5.0.2. 5.0.3 and 5.0.4 were short-lived releases with most of the features of 5.0.5 that were replaced owing to significant bugs. Incompatibilities between 5.0.2 and 5.0.5 ----------------------------------------- The "zshaddhistory" hook mechanism documented in the zshmisc manual page has been upgraded so that a hook returning status 2 causes a history line to be saved on the internal history list but not written to the history file. Previously any non-zero status return would cause the line not to be saved on the history at all. It is recommended to use status 1 for this (indeed most shell users would naturally do so).
Fix zsh cross-build on NetBSD. Patch it up to use compile-tests rather than run-tests in autoconf for many of its tests (OS-independently). Teach it about the few remaining properties for NetBSD in particular. ok agc
Fix default SunOS packaging.
As jperkin@ has used an "ugly hack" to fix solaris packaging, the same ugly hack can be used to fix the same problem on Linux.
Ugly hack to fix Solaris packaging. Fixing this properly involves rewriting this entire package, and I've not yet had time to test my proposed rewrite on enough platforms, so this will do for now.
"user-destdir" is default these days
pkglint cleanup.
Update to 5.0.0 * PLIST.xattr is moved to Makefile.common * Patches are introduced from zsh-current Tested on NetBSD 6.99.8 and 5.1. Changelog: * Many improvements. In detail, see NEWS
INSTALL_UNSTRIPPED=yes for Darwin. It is better workaround, I think.
Should be INSTALL_LIB instead of INSTALL_DATA. It is mistake.
Add workaround to fix broken "make package" on Darwin 11.0.1.
Add "used by" lines.
* Add workaround for curses detection.
* Remove PLIST.DragonFly, now CHECK_BUILTIN.curses is used. * Disable gdbm support explicitly.
update master_sites
USE > IS for builtins.
Fix compile on NetBSD with terminfo, pkg/42762.
Change HOMEPAGE to sourceforge's one (old one had been retired).
DragonFly has ncurses too.
Register extra shared objects used where ncurses exists. Hopefully fix PLIST errors reported by Takahiro Kambe (FreeBSD) and Aleksey Cheusov (Linux). No bump because nothing changes on NetBSD.
Bad uebayasi didn't know that user-destdir doesn't catch PLIST errors.
- Avoid using lovely :?foo:bar syntax since netbsd-5's make(1) handles it oddly. Should fix build errors seen on netbsd-5. - Kill unused variables.
Garbage collect unused code. No functional changes.
Update zsh to 4.2.7. Changes are unknown.
Don't needlessly depend on a perl module for a perl script we do not install. Bump PKGREVISION for zsh and zsh-current.
Fix an insecure temp file creation vulnerability in zsh's difflog.pl (CVE-2007-6209).
sunsite.dk -> mirrors.dotsrc.org
Make tcsetpgrp the default for all platforms but Interix. Please list exceptions explicitly.
Mark zsh packages as MAKE_JOBS_SAFE=no (from ASau in pkgthon).
Oops, I accidently typed wrong key and commited wrong one. This is corrected one. FreeBSD needs PLIST.shlibs as DraonFly.
*** empty log message ***
Compare "MKDYNAMICROOT" with "no" to figure out the desirable static linking behavior under NetBSD. This matches what "bsd.shlib.mk" does and avoids "Malformed conditional" warnings under other platforms. This fixes PR pkg/36769 by Yakovetsky Vladimir.
Fix DESTDIR-handling for zsh-current by ensuring that the destdir-support line is defined before bsd.prefs.mk is included.
On FreeBSD, terminfo.so gets installed like on Linux.
Pullup ticket 2075 - requested by joerg various DragonFly portability and modular X.org fixes Revisions pulled up: - pkgsrc/math/xfractint/Makefile 1.5 - pkgsrc/math/xfractint/distinfo 1.5 - pkgsrc/math/xfractint/patches/patch-ab 1.3 - pkgsrc/emulators/zsnes/distinfo 1.13 - pkgsrc/emulators/zsnes/patches/patch-aa 1.7 - pkgsrc/emulators/zsnes/patches/patch-af 1.3 - pkgsrc/games/xconq/Makefile 1.34 - pkgsrc/games/xconq/distinfo 1.10 - pkgsrc/games/xconq/patches/patch-ac 1.7 - pkgsrc/shells/zsh/Makefile.common 1.38 - pkgsrc/editors/ssam/distinfo 1.5 - pkgsrc/editors/ssam/patches/patch-ac 1.1 - pkgsrc/graphics/radiance/distinfo 1.9 - pkgsrc/graphics/radiance/patches/patch-au 1.1 - pkgsrc/graphics/radiance/patches/patch-av 1.1 - pkgsrc/graphics/radiance/patches/patch-aw 1.1 - pkgsrc/editors/xemacs/Makefile.common 1.19 - pkgsrc/editors/xemacs/files/dragonfly.h 1.2 Module Name: pkgsrc Committed By: joerg Date: Mon Apr 16 14:48:31 UTC 2007 Modified Files: pkgsrc/math/xfractint: Makefile distinfo Added Files: pkgsrc/math/xfractint/patches: patch-ab Log Message: Fix linkage. Bump revision. --- Module Name: pkgsrc Committed By: joerg Date: Mon Apr 16 16:06:32 UTC 2007 Modified Files: pkgsrc/emulators/zsnes: distinfo pkgsrc/emulators/zsnes/patches: patch-aa Added Files: pkgsrc/emulators/zsnes/patches: patch-af Log Message: Fix build on DragonrFly. --- Module Name: pkgsrc Committed By: joerg Date: Mon Apr 16 18:47:20 UTC 2007 Modified Files: pkgsrc/games/xconq: Makefile distinfo pkgsrc/games/xconq/patches: patch-ac Log Message: Fix linkage with modular Xorg. Bump revision. --- Module Name: pkgsrc Committed By: joerg Date: Mon Apr 16 19:01:28 UTC 2007 Modified Files: pkgsrc/shells/zsh: Makefile.common Log Message: Always build with tcsetpgrp support on DragonFly, makig zsh not depend on a control terminal during build. --- Module Name: pkgsrc Committed By: joerg Date: Wed Apr 18 18:18:24 UTC 2007 Modified Files: pkgsrc/editors/ssam: distinfo Added Files: pkgsrc/editors/ssam/patches: patch-ac Log Message: Rename setcontext to avoid conflicts with libc. --- Module Name: pkgsrc Committed By: joerg Date: Wed Apr 18 18:47:21 UTC 2007 Modified Files: pkgsrc/graphics/radiance: distinfo Added Files: pkgsrc/graphics/radiance/patches: patch-au patch-av patch-aw Log Message: Avoid conflict with libc symbol setcontext. --- Module Name: pkgsrc Committed By: joerg Date: Fri Apr 20 15:05:22 UTC 2007 Modified Files: pkgsrc/editors/xemacs: Makefile.common pkgsrc/editors/xemacs/files: dragonfly.h Log Message: Fix build on DragonFly 1.8+
Always build with tcsetpgrp support on DragonFly, makig zsh not depend on a control terminal during build.
Whitespace cleanup, courtesy of pkglint. Patch provided by Sergey Svishchev in private mail.
Flag a number of packages I use as supporting (user-)destdir. apg is a bit special as it has some hardcoded ownership, so mark that as "destdir".
Update MASTER_SITES and/or HOMEPAGE, from Sergey Svishchev.
List the info files directly in the PLIST and honor PKG{INFO,MAN}DIR.
* Teach the tools framework how to supply the pkgsrc version of makeinfo if no native makeinfo executable exists. Honor TEXINFO_REQD when determining whether the native makeinfo can be used. * Remove USE_MAKEINFO and replace it with USE_TOOLS+=makeinfo. * Get rid of all the "split" argument deduction for makeinfo since the PLIST module already handles varying numbers of split info files correctly. NOTE: Platforms that have "makeinfo" in the base system should check that the makeinfo entries of pkgsrc/mk/tools.${OPSYS}.mk are correct.
Remove USE_PKGINSTALL from pkgsrc now that mk/install/pkginstall.mk automatically detects whether we want the pkginstall machinery to be used by the package Makefile.
Ran "pkglint --autofix", which corrected some of the quoting issues in CONFIGURE_ARGS.
Honour PKG_SYSCONFDIR. Bump revision. PR32026 from Geert Hendrickx.
Remove a master site that does not provide the distfile any longer.
Fixed pkglint warnings.
Allow the one-true-shell to work on DragonFly. Patches are included upstream already.
Fix PLIST on OpenBSD. - Changed IRIX, Interix, Linux and OpenBSD share PLIST.terminfo, instead of PLIST for each OS. - zsh doesn't build libzsh-4.2.5.so on OpenBSD, so PLIST.shlibs should be excluded.
* Separate out the shell registration into a separately unpacked script +SHELL. * Turn PKG_REGISTER_SHELLS into a variable that can be set in the shell environment so that admins can make a choice when installing from binary packages. * PKG_SHELL is now a list of paths, and if the path is relative, then it is taken to be relative to ${PREFIX}. Convert packages that set PKG_SHELL to take advantage of this new feature by changing the full paths to the shells into relative paths.
Make this package build on Linux by correcting PLIST. Fixes PR pkg/29552.
Remove USE_BUILDLINK3 and NO_BUILDLINK; these are no longer used.
Changes 4.2.5: * Bug-fix release * Fixes few configuration problems, notably on MacOSX
Make this work on IRIX. NB: this needs an install-sh that supports "-S -f", as in rev. 1.3 of bootstrap/files/install-sh.in. After installing that install-sh, set _STRIPFLAG_INSTALL?= -S -f in mk/platform/IRIX.mk and all should be peachy. This will be done correctly eventually, don't worry. :-)
Pull in PLIST.${OPSYS} if existant.
Fix build on Interix. PR26847, from Hiramatsu Yoshifumi.
Add TEXINF_REQD to 4.0 to work on NetBSD 1.5.3. Reported by mochida at Netside.
Replace RPATH_FLAG with LINKER_RPATH_FLAG and COMPILER_RPATH_FLAG, which are the full option names used to set rpath directives for the linker and the compiler, respectively. In places were we are invoking the linker, use "${LINKER_RPATH_FLAG} <path>", where the space is inserted in case the flag is a word, e.g. -rpath. The default values of *_RPATH_FLAG are set by the compiler/*.mk files, depending on the compiler that you use. They may be overridden on a ${OPSYS}-specific basis by setting _OPSYS_LINKER_RPATH_FLAG and _OPSYS_COMPILER_RPATH_FLAG, respectively. Garbage-collect _OPSYS_RPATH_NAME and _COMPILER_LD_FLAG.
Set "BUILDLINK_PASSTHRU_RPATHDIRS" to stop buildlink3 from removing "/lib" from the run time shared library path instead of trying to defeat its option parser.
Improve handling of "ZSH_STATIC" again: 1.) Only create a dynamically linked "zsh" binary if "MKDYNAMICROOT" is defined and set to "yes". This way people who still use statically linked binaries on their root filesystem will get a static binary. 2.) Link the "zsh" binary so that it use "/libexec/ld.elf_so" and shared libraries from "/lib". It now works without the "/usr" filesystem being mounted.
Don't create a statically linked "zsh" binary on NetBSD system which have dynamic library support on the root partition (e.g. 2.0 and newer). It is enough that the "zsh" binary does *not* depend on its own shared libraries which won't be on the root partition and we get a shell with proper I18N support this way. Approved by Masao Uebayashi.
update to zsh-4.2.1 Changes since zsh version 4.2.0 ------------------------------- - The autoload and related builtins take options -k and -z to indicate ksh or zsh autoloading style for given functions, making it possible to mix and match. - Assignments to associative arrays can use the i and r index flags. For example, assoc[(i)alpha*]=bravo sets the value for the element whose key matches the pattern `alpha*'; assoc[(r)activ*]=passive sets the value for the element whose current value matches the pattern `activ*'. - The glob qualifier F indicates a non-empty directory. Hence *(F) indicates all subdirectories with entries, *(/^F) means all subdirectories with no entries. - fc -p and fc -P provide push/pop for the status of the shell's history (both internal and using the history file). With automatic scoping (fc -ap) it becomes easy to use a temporary history in a function. This has been added to the calculator function zcalc to make its internal history work more seamlessly. - A new `try block' and `always block' syntax has been introduced to make it easier to ensure the shell runs important tidy-up code in the event of an error. It also runs after a break, continue, or return, including a return forced by the ERR_RETURN option (but not an exit, which is immediate). The syntax is: `{' try-block-list `}' `always' `{' always-block-list `}' where no newline or semicolon may appear between `}' and `always'. This is compatible with all previous valid zsh syntax as an `always' at that point used to be a syntax error. For example, { echo Code run in current shell } always { echo Tidy-up code } - A new zle widget reset-prompt has been added to re-expand the current prompt. Changes to the variable in use as well as changes in its expanions are both taken into account. The same effect is now forced by a job change notification, making the %j prompt escape and %(j..) ternary expression more useful. - The zftp module supports ports following the hostname in the normal suffix notation, `host:port'. This requires IPv6 colon-style addresses to be specified in suitably quoted square brackets, for example: zftp open '[f000::baaa]' zftp open '[f000::baaa]:ftp' (the two are equivalent). - Special traps, those that don't correspond to signals, i.e. ZERR, DEBUG and EXIT are no longer executed inside other traps. This caused unnecessary confusion if, for example, both DEBUG and EXIT traps were set. The new behaviour is more compatible with other shells. - New option TRAPS_ASYNC which if set allows traps to run while the shell is waiting for a child process. This is the traditional zsh behaviour; POSIX requires the option to be unset. In sh/ksh compatibility mode the option is turned off by default and the option letter -T turns it on, for compatibility with FreeBSD sh.
Add {BA,Z}SH_STATIC to BUILD_DEFS. Addresses request on tech-pkg@ by Georg Schwarz.
Enable pkgviews installation.
Convert to buildlink3.
Add a missing file to PLIST. Noted by Kouichirou Hiratsuka in PR pkg/24976. Bump PKGREVISION.
Update to 4.2.0 Patch provided by Geoff C. Wing in PR 24918 ok'd by uebayasi@ New features between zsh versions 4.0 and 4.2 Configuration: * upgraded to use autoconf post-2.50 * improved compatibility with other shells through shell options, builtin arguments and improved builtin option parsing Syntax and builtins: * new printf builtin * `+=' to append to parameters which works for scalars, arrays and (with pairs) associative arrays. * enhanced multiple parameter `for' loops: for key value in key1 value1 key2 value2 ... maintaining full compatibility with POSIX syntax. * Suffix aliases allow the shell to run a command on a file by suffix, e.g `alias -s ps=gv' makes `foo.ps' execute `gv foo.ps'. Supplied function zsh-mime-setup uses existing mailcap and mime.types files to set up suitable aliases. Supplied function pick-web-browser is suitable for finding a browser to show .html etc. files by suffix alias. * new option `no_case_glob' for case-insensitive globbing. Add-on modules and functions: * zsh/datetime modules makes date formatting and seconds since EPOCH available inside the shell. * zsh/net/tcp module provides builtin interface to TCP through ztcp builtin. Function suite for interactive and script use with expect-style pattern matching. * zsh/net/socket module provides zsocket builtin. * zcalc calculator function with full line editing. * builtin interface to pcre library * zsh/zselect module provides zselect builtin as interface to select system call Completion system: * general improvements to command and context support, low-level functions, display code. * in verbose mode, matches with the same description are grouped * highly configurable completions for values of specific parameters, specific redirections for specific commands * support for bash completion functions (typically zsh native functions are more powerful where available) * New completions provided for (some of these may be in later 4.0 releases): valgrind, tidy, texinfo, infocmp, Java classes, larch, limit, locale parameters, netcat, mysqldiff, mt, lsof, elinks, ant, debchange (dch), email addresses, file system types, Perforce, xsltproc. Plus many others. Line editor: * special parameters $PREDISPLAY, $POSTDISPLAY available in function widgets to configure uneditable text (for narrowing) * recursive editing * supplied widgets read-from-minibuffer, replace-string use these features (more intuitive prompting and argument reading than 4.0) * access to killed text via $CUTBUFFER and $killring * supplied highly configurable word widgets forward-word-match etc., can set what constitutes a word interactively or in startup script (implement bash-style behaviour, replacing previous bash-* word widgets) * interface to incremental search via $LASTSEARCH * better handling of keymaps in zle and widgets * better support for output from user-defined widgets while zle is active * tetris game which runs entirely in zle * several other contributed widgets Local internal improvements: * disowned jobs are automatically restarted * \u and \U print escapes for Unicode * read -d allows a custom line ending. * read -t . * line numbers in error messages and $PS4 output are more consistent * `=prog' expands only paths, no longer aliases for consistency * job display in prompts; `jobs' command output can be piped * prompts: new $RPROMPT2, %^, %j, %y, enhanced %{, %}, %_. * rand48() function in zsh/mathfunc for better randomness in arithmetic (if the corresponding math library function is present) * $SECONDS parameter can be made floating point via `typeset -F SECONDS' for better timing accuracy * improvements to command line history mechanism * job table is dynamically sized, preventing overflow (typically seen previously in complex completions). * many bugfixes
The zsh build process inspects the generated config.status file for the presence of some strings to decide how to build zsh. This is, of course, a stupid thing to do, but we must not override config.status to "fix" this build. This fixes PR 24483.
We no longer need to set CONFIG_STATUS_OVERRIDE to an empty value as bsd.pkg.mk no longer overrides the ability of config.status to generate new files.
The build process for zsh runs a shell script "Src/mkmakemod.sh" that explicitly calls config.status to generate some Makefiles in certain directories. This particular package has a need for executing the real config.status, so we need to avoid overriding it automatically.
USE_NEW_TEXINFO is unnecessary now.
Convert to USE_NEW_TEXINFO. Use INSTALL_TARGET to install info files: this gives a proper environment for USE_NEW_TEXINFO framework to work. Fix makeinfo invocation for zsh-current via patch file so that only _one_ info file is generated as PLIST seems to want it.
style nits
Share Makefile, update patch sum.