summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTorsten Veller <tove@gentoo.org>2011-01-18 18:36:54 +0000
committerTorsten Veller <tove@gentoo.org>2011-01-18 18:36:54 +0000
commit3f86265507cd0a1bab0485a122242fb8ce63e14e (patch)
tree5c43086e293f1cdd673947c8e3d43cd59f860f2a /app-shells/zsh/zsh-4.3.11-r1.ebuild
parentFix for tests, #333845 (diff)
downloadgentoo-2-3f86265507cd0a1bab0485a122242fb8ce63e14e.tar.gz
gentoo-2-3f86265507cd0a1bab0485a122242fb8ce63e14e.tar.bz2
gentoo-2-3f86265507cd0a1bab0485a122242fb8ce63e14e.zip
Fix crash with ${:0:} (#352056). Thanks to Christian Ruppert
(Portage version: 2.2.0_alpha15/cvs/Linux x86_64)
Diffstat (limited to 'app-shells/zsh/zsh-4.3.11-r1.ebuild')
-rw-r--r--app-shells/zsh/zsh-4.3.11-r1.ebuild202
1 files changed, 202 insertions, 0 deletions
diff --git a/app-shells/zsh/zsh-4.3.11-r1.ebuild b/app-shells/zsh/zsh-4.3.11-r1.ebuild
new file mode 100644
index 000000000000..d631e93fc64a
--- /dev/null
+++ b/app-shells/zsh/zsh-4.3.11-r1.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-shells/zsh/zsh-4.3.11-r1.ebuild,v 1.1 2011/01/18 18:36:54 tove Exp $
+
+EAPI=3
+
+# doc package for -dev version exists?
+doc_available=true
+
+inherit eutils flag-o-matic multilib prefix
+
+MY_PV=${PV/_p/-dev-}
+S=${WORKDIR}/${PN}-${MY_PV}
+
+zsh_ftp="ftp://ftp.zsh.org/pub"
+
+if [[ ${PV} != "${MY_PV}" ]] ; then
+ ZSH_URI="${zsh_ftp}/development/${PN}-${MY_PV}.tar.bz2"
+ if ${doc_available} ; then
+ ZSH_DOC_URI="${zsh_ftp}/development/${PN}-${MY_PV}-doc.tar.bz2"
+ else
+ ZSH_DOC_URI="${zsh_ftp}/${PN}-${PV%_*}-doc.tar.bz2"
+ fi
+else
+ ZSH_URI="mirror://sourceforge/${PN}/${P}.tar.bz2
+ ${zsh_ftp}/${P}.tar.bz2"
+ ZSH_DOC_URI="${zsh_ftp}/${PN}-${PV%_*}-doc.tar.bz2"
+fi
+
+LOVERS_PV=0.8.3
+LOVERS_P=zsh-lovers
+LOVERS_URI="http://deb.grml.org/pool/main/z/zsh-lovers"
+
+DESCRIPTION="UNIX Shell similar to the Korn shell"
+HOMEPAGE="http://www.zsh.org/"
+SRC_URI="${ZSH_URI}
+ examples? ( ${LOVERS_URI}/${LOVERS_P}_${LOVERS_PV}.tar.gz )
+ doc? ( ${ZSH_DOC_URI} )"
+
+LICENSE="ZSH gdbm? ( GPL-2 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~sparc-fbsd ~x86-fbsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="caps debug doc examples gdbm maildir pcre static unicode"
+
+RDEPEND=">=sys-libs/ncurses-5.1
+ static? ( || ( >=sys-libs/ncurses-5.7-r4[static-libs] <sys-libs/ncurses-5.7-r4 ) )
+ caps? ( sys-libs/libcap )
+ pcre? ( >=dev-libs/libpcre-3.9
+ static? ( >=dev-libs/libpcre-3.9[static-libs] ) )
+ gdbm? ( sys-libs/gdbm )"
+DEPEND="|| ( sys-apps/groff app-doc/heirloom-doctools )
+ examples? ( app-text/asciidoc )
+ ${RDEPEND}"
+
+src_prepare() {
+ # fix zshall problem with soelim
+ ln -s Doc man1
+ mv Doc/zshall.1 Doc/zshall.1.soelim
+ soelim Doc/zshall.1.soelim > Doc/zshall.1
+
+ epatch "${FILESDIR}/${PN}"-init.d-gentoo-r1.diff \
+ "${FILESDIR}"/4.3.11-subst.patch
+
+ cp "${FILESDIR}"/zprofile-1 "${T}"/zprofile || die
+ eprefixify "${T}"/zprofile || die
+ if use prefix ; then
+ sed -i -e 's|@ZSH_PREFIX@||' -e '/@ZSH_NOPREFIX@/d' "${T}"/zprofile || die
+ else
+ sed -i -e 's|@ZSH_NOPREFIX@||' -e '/@ZSH_PREFIX@/d' -e 's|""||' "${T}"/zprofile || die
+ fi
+}
+
+src_configure() {
+ local myconf=
+
+ if use static ; then
+ myconf+=" --disable-dynamic"
+ append-ldflags -static
+ fi
+ if use debug ; then
+ myconf+=" \
+ --enable-zsh-debug \
+ --enable-zsh-mem-debug \
+ --enable-zsh-mem-warning \
+ --enable-zsh-secure-free \
+ --enable-zsh-hash-debug"
+ fi
+
+ if [[ ${CHOST} == *-darwin* ]]; then
+ myconf+=" --enable-libs=-liconv"
+ append-ldflags -Wl,-x
+ fi
+
+ econf \
+ --bindir="${EPREFIX}"/bin \
+ --libdir="${EPREFIX}"/usr/$(get_libdir) \
+ --enable-etcdir="${EPREFIX}"/etc/zsh \
+ --enable-fndir="${EPREFIX}"/usr/share/zsh/${PV%_*}/functions \
+ --enable-site-fndir="${EPREFIX}"/usr/share/zsh/site-functions \
+ --enable-function-subdirs \
+ --with-term-lib="ncursesw ncurses" \
+ --with-tcsetpgrp \
+ $(use_enable maildir maildir-support) \
+ $(use_enable pcre) \
+ $(use_enable caps cap) \
+ $(use_enable unicode multibyte) \
+ $(use_enable gdbm ) \
+ ${myconf}
+
+ if use static ; then
+ # compile all modules statically, see Bug #27392
+ # removed cap and curses because linking failes
+ sed -i \
+ -e "s,link=no,link=static,g" \
+ -e "/^name=zsh\/cap/s,link=static,link=no," \
+ -e "/^name=zsh\/curses/s,link=static,link=no," \
+ "${S}"/config.modules || die
+ if ! use gdbm ; then
+ sed -i '/^name=zsh\/db\/gdbm/s,link=static,link=no,' \
+ "${S}"/config.modules || die
+ fi
+# else
+# sed -i -e "/LIBS/s%-lpcre%${EPREFIX}/usr/$(get_libdir)/libpcre.a%" Makefile
+ fi
+}
+
+src_test() {
+ local i
+ addpredict /dev/ptmx
+ for i in C02cond.ztst Y01completion.ztst Y02compmatch.ztst Y03arguments.ztst ; do
+ rm "${S}"/Test/${i} || die
+ done
+ make check || die "make check failed"
+}
+
+src_install() {
+ emake DESTDIR="${D}" install install.info || die
+
+ insinto /etc/zsh
+ doins "${T}"/zprofile || die
+
+ keepdir /usr/share/zsh/site-functions
+ insinto /usr/share/zsh/${PV%_*}/functions/Prompts
+ newins "${FILESDIR}"/prompt_gentoo_setup-1 prompt_gentoo_setup || die
+
+ # install miscellaneous scripts; bug #54520
+ local i
+ sed -i -e "s:/usr/local/bin/perl:${EPREFIX}/usr/bin/perl:g" \
+ -e "s:/usr/local/bin/zsh:${EPREFIX}/bin/zsh:g" "${S}"/{Util,Misc}/* || die
+ for i in Util Misc ; do
+ insinto /usr/share/zsh/${PV%_*}/${i}
+ doins ${i}/* || die
+ done
+
+ dodoc ChangeLog* META-FAQ NEWS README config.modules
+
+ if use doc ; then
+ pushd "${WORKDIR}/${PN}-${PV%_*}" >/dev/null
+ dohtml -r Doc/* || die
+ insinto /usr/share/doc/${PF}
+ doins Doc/zsh.{dvi,pdf} || die
+ popd >/dev/null
+ fi
+
+ if use examples ; then
+ pushd "${WORKDIR}/${LOVERS_P/.orig/}" >/dev/null
+ asciidoc zsh-lovers.1.txt
+ mv zsh-lovers.1.html zsh-lovers.html || die
+ a2x -f manpage zsh-lovers.1.txt || die
+ #a2x -f pdf zsh-lovers.1.txt || die
+ #mv zsh-lovers.1.pdf zsh-lovers.pdf || die
+
+ doman zsh-lovers.1 || die "doman zsh-lovers failed"
+ dohtml zsh-lovers.html || die "dohtml zsh-lovers failed"
+ docinto zsh-lovers
+ dodoc zsh.vim README || die
+ insinto /usr/share/doc/${PF}/zsh-lovers
+ doins refcard.pdf || die
+# doins zsh-lovers.{ps,pdf} refcard.{dvi,ps,pdf} || die
+ doins -r zsh_people || die "doins zsh_people failed"
+ popd >/dev/null
+ fi
+
+ docinto StartupFiles
+ dodoc StartupFiles/z*
+}
+
+pkg_postinst() {
+ # should link to http://www.gentoo.org/doc/en/zsh.xml
+ elog
+ elog "If you want to enable Portage completions and Gentoo prompt,"
+ elog "emerge app-shells/zsh-completion and add"
+ elog " autoload -U compinit promptinit"
+ elog " compinit"
+ elog " promptinit; prompt gentoo"
+ elog "to your ~/.zshrc"
+ elog
+ elog "Also, if you want to enable cache for the completions, add"
+ elog " zstyle ':completion::complete:*' use-cache 1"
+ elog "to your ~/.zshrc"
+ elog
+}