2008-07-25 11:14:48 +02:00
|
|
|
# $NetBSD: Makefile.common,v 1.48 2008/07/25 09:14:48 ghen Exp $
|
2003-06-29 06:24:56 +02:00
|
|
|
|
2007-02-22 20:26:05 +01:00
|
|
|
DISTNAME= zsh-${ZSH_VERSION}
|
2003-06-29 06:24:56 +02:00
|
|
|
CATEGORIES= shells
|
2008-07-03 11:07:26 +02:00
|
|
|
MASTER_SITES= ftp://mirrors.dotsrc.org/zsh/ \
|
2003-06-29 06:24:56 +02:00
|
|
|
ftp://ftp.fu-berlin.de/pub/unix/shells/zsh/ \
|
|
|
|
ftp://ftp.funet.fi/pub/unix/shells/zsh/ \
|
|
|
|
http://www.math.technion.ac.il/pub/zsh/ \
|
|
|
|
ftp://ftp.zsh.org/zsh/
|
|
|
|
EXTRACT_SUFX= .tar.bz2
|
|
|
|
|
|
|
|
MAINTAINER= ${ZSH_MAINTAINER}
|
2006-10-04 23:53:15 +02:00
|
|
|
HOMEPAGE= http://zsh.dotsrc.org/
|
2003-06-29 06:24:56 +02:00
|
|
|
COMMENT= The Z shell
|
|
|
|
|
2006-10-09 14:52:34 +02:00
|
|
|
PKG_DESTDIR_SUPPORT= user-destdir
|
|
|
|
|
2005-04-07 16:16:41 +02:00
|
|
|
GNU_CONFIGURE= yes
|
2003-06-30 15:46:04 +02:00
|
|
|
|
2005-12-06 00:55:01 +01:00
|
|
|
CONFIGURE_ARGS+= --enable-etcdir=${PKG_SYSCONFDIR:Q}
|
2005-11-26 16:41:16 +01:00
|
|
|
|
2006-03-05 17:27:22 +01:00
|
|
|
USE_TOOLS+= makeinfo
|
2006-04-07 17:28:49 +02:00
|
|
|
INFO_FILES= # PLIST
|
2004-11-25 17:12:54 +01:00
|
|
|
TEXINFO_REQD= 4.0
|
2003-06-29 06:24:56 +02:00
|
|
|
|
2004-05-07 00:29:36 +02:00
|
|
|
PKG_INSTALLATION_TYPES= overwrite pkgviews
|
|
|
|
|
2003-06-29 06:24:56 +02:00
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
|
|
|
2007-08-07 20:54:31 +02:00
|
|
|
# Handle any PKG_OPTIONS that this package might have.
|
|
|
|
.sinclude "options.mk"
|
|
|
|
|
2004-07-11 03:23:29 +02:00
|
|
|
BUILD_DEFS+= ZSH_STATIC
|
2007-11-04 16:58:24 +01:00
|
|
|
MAKE_JOBS_SAFE= no
|
2004-07-11 03:23:29 +02:00
|
|
|
|
|
|
|
.if defined(ZSH_STATIC) && !empty(ZSH_STATIC:M[Yy][Ee][Ss])
|
2004-08-20 18:59:58 +02:00
|
|
|
CONFIGURE_ARGS+= --disable-dynamic
|
2004-08-20 12:36:12 +02:00
|
|
|
|
2004-08-20 13:48:46 +02:00
|
|
|
NETBSD_SHLINKER= /libexec/ld.elf_so
|
2004-08-20 18:59:58 +02:00
|
|
|
NETBSD_SHLIBDIR= /lib
|
2004-08-20 13:48:46 +02:00
|
|
|
|
2007-08-13 21:43:30 +02:00
|
|
|
. if ${OPSYS} == "NetBSD" && \
|
|
|
|
defined(OBJECT_FMT) && ${OBJECT_FMT} == "ELF" && \
|
|
|
|
defined(MKDYNAMICROOT) && ${MKDYNAMICROOT} != "no" && \
|
|
|
|
defined(NETBSD_SHLINKER) && exists(${NETBSD_SHLINKER}) && \
|
|
|
|
defined(NETBSD_SHLIBDIR) && exists(${NETBSD_SHLIBDIR})
|
2004-08-20 13:48:46 +02:00
|
|
|
#
|
|
|
|
# Built a dynamically linked "zsh" binary on NetBSD systems which use
|
|
|
|
# dynamically linked binaries on the root filesystem. The binary will
|
|
|
|
# only depend on the run-time link-editor and shared libraries on the
|
|
|
|
# root filesystem. We use "-rpath" below by purpose because the
|
|
|
|
# buildlink 3 framework won't filter it out.
|
|
|
|
#
|
2004-08-20 18:59:58 +02:00
|
|
|
BUILDLINK_PASSTHRU_RPATHDIRS+= ${NETBSD_SHLIBDIR}
|
|
|
|
|
|
|
|
LDFLAGS+= -Wl,-dynamic-linker=${NETBSD_SHLINKER} -Wl,-R${NETBSD_SHLIBDIR}
|
2004-08-20 13:48:46 +02:00
|
|
|
. else
|
2003-06-29 06:24:56 +02:00
|
|
|
LDFLAGS+= -static
|
2004-08-20 12:36:12 +02:00
|
|
|
. endif
|
2003-06-29 06:24:56 +02:00
|
|
|
.else
|
2003-06-30 15:46:04 +02:00
|
|
|
. if ${OPSYS} == "SunOS"
|
2003-06-29 06:24:56 +02:00
|
|
|
PLIST_SRC= ${PKGDIR}/PLIST.dynamic ${PKGDIR}/PLIST
|
2003-06-30 15:46:04 +02:00
|
|
|
. else
|
2004-08-27 08:29:06 +02:00
|
|
|
LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/zsh
|
2005-08-07 22:18:07 +02:00
|
|
|
|
2007-08-24 17:16:21 +02:00
|
|
|
. if ${OPSYS} == "Linux" || ${OPSYS} == "IRIX" || ${OPSYS} == "OpenBSD"
|
2007-02-22 20:26:05 +01:00
|
|
|
PLIST_SRC+= ${PKGDIR}/PLIST.terminfo
|
2007-08-24 17:20:43 +02:00
|
|
|
. elif ${OPSYS} == "Interix" || ${OPSYS} == "DragonFly" || \
|
|
|
|
${OPSYS} == "FreeBSD"
|
2007-02-22 20:26:05 +01:00
|
|
|
PLIST_SRC+= ${PKGDIR}/PLIST.terminfo ${PKGDIR}/PLIST.shlibs
|
2005-01-25 14:13:55 +01:00
|
|
|
. else
|
2007-02-22 20:26:05 +01:00
|
|
|
PLIST_SRC+= ${PKGDIR}/PLIST.shlibs
|
2005-03-04 04:59:32 +01:00
|
|
|
. endif
|
2005-08-07 22:18:07 +02:00
|
|
|
|
2005-03-04 04:59:32 +01:00
|
|
|
PLIST_SRC+= ${PKGDIR}/PLIST.dynamic ${PKGDIR}/PLIST
|
2003-06-30 15:46:04 +02:00
|
|
|
. endif
|
2003-06-29 06:24:56 +02:00
|
|
|
.endif
|
|
|
|
|
2005-01-18 13:44:53 +01:00
|
|
|
.if ${OPSYS} == "Interix"
|
2005-01-25 14:13:55 +01:00
|
|
|
CONFIGURE_ARGS+=--without-tcsetpgrp
|
2008-06-16 14:39:48 +02:00
|
|
|
.else
|
2005-03-04 04:59:32 +01:00
|
|
|
CONFIGURE_ARGS+=--with-tcsetpgrp
|
2005-01-18 13:44:53 +01:00
|
|
|
.endif
|
|
|
|
|
2003-06-29 06:24:56 +02:00
|
|
|
.undef MANZ
|
|
|
|
|
2005-07-29 20:32:17 +02:00
|
|
|
PKG_SHELL= bin/zsh
|
2003-06-29 06:24:56 +02:00
|
|
|
|
2003-08-05 15:37:51 +02:00
|
|
|
INSTALL_TARGET= install install.info
|
|
|
|
|
2005-10-11 14:43:00 +02:00
|
|
|
pre-install:
|
2005-10-23 17:36:48 +02:00
|
|
|
@cd ${WRKSRC}/Completion; ${FIND} . -name \*.orig -exec ${RM} \{\} \;
|
2005-10-11 14:43:00 +02:00
|
|
|
|
2003-06-29 06:24:56 +02:00
|
|
|
post-install:
|
2006-10-09 14:52:34 +02:00
|
|
|
${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/share/doc/zsh
|
|
|
|
cd ${WRKSRC}/Etc && ${INSTALL_DATA} BUGS FAQ \
|
|
|
|
${DESTDIR}${PREFIX}/share/doc/zsh
|
|
|
|
cd ${WRKSRC} && ${INSTALL_DATA} FEATURES NEWS \
|
|
|
|
${DESTDIR}${PREFIX}/share/doc/zsh
|
2003-06-29 06:24:56 +02:00
|
|
|
|
|
|
|
# Utilize Zsh's test framework.
|
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
2004-03-28 12:30:13 +02:00
|
|
|
# Testing of dynamic shell only works after install has been done
|
2003-06-29 06:24:56 +02:00
|
|
|
#
|
|
|
|
.PHONY: do-test do-su-test real-su-test
|
|
|
|
|
|
|
|
do-test: do-su-test
|
|
|
|
|
|
|
|
do-su-test:
|
|
|
|
@${_PKG_SILENT}${_PKG_DEBUG} \
|
|
|
|
${ECHO_MSG} "*** Warning: This test needs to be run as root"
|
|
|
|
@${_PKG_SILENT}${_PKG_DEBUG} \
|
|
|
|
realtarget="real-su-test"; \
|
|
|
|
action="install"; \
|
|
|
|
${_SU_TARGET}
|
|
|
|
|
|
|
|
real-su-test:
|
|
|
|
@${_PKG_SILENT}${_PKG_DEBUG} \
|
|
|
|
${ECHO_MSG} "${_PKGSRC_IN}> Testing for ${PKGNAME}"
|
|
|
|
@cd ${WRKSRC} && ${MAKE} check
|
|
|
|
@cd ${WRKSRC}/Test && ${MAKE} clean
|