summaryrefslogtreecommitdiff
path: root/testing/zsh
diff options
context:
space:
mode:
authorroot <root@rshg054.dnsready.net>2012-02-09 23:14:54 +0000
committerroot <root@rshg054.dnsready.net>2012-02-09 23:14:54 +0000
commit4bc61018eec54dbe50e7556ce01d2ef2859b2c9f (patch)
tree3ea5705a573fd320639395f484fc12335e0a1b88 /testing/zsh
parent54b7119c36756b86ea463649ee972cd6c1ce5863 (diff)
Thu Feb 9 23:14:54 UTC 2012
Diffstat (limited to 'testing/zsh')
-rw-r--r--testing/zsh/PKGBUILD61
-rw-r--r--testing/zsh/svn-1.7.patch34
-rw-r--r--testing/zsh/zprofile1
-rw-r--r--testing/zsh/zsh.install11
4 files changed, 107 insertions, 0 deletions
diff --git a/testing/zsh/PKGBUILD b/testing/zsh/PKGBUILD
new file mode 100644
index 000000000..87e70797e
--- /dev/null
+++ b/testing/zsh/PKGBUILD
@@ -0,0 +1,61 @@
+# $Id: PKGBUILD 149695 2012-02-09 00:00:30Z allan $
+# Maintainer: Pierre Schmitz <pierre@archlinux.de>
+
+pkgname=zsh
+pkgver=4.3.15
+pkgrel=3
+pkgdesc='A very advanced and programmable command interpreter (shell) for UNIX'
+arch=('i686' 'x86_64')
+url='http://www.zsh.org/'
+license=('custom')
+depends=('pcre' 'libcap' 'gdbm')
+install=zsh.install
+source=("ftp://ftp.zsh.org/pub/${pkgname}-${pkgver}.tar.bz2"
+ 'zprofile' 'svn-1.7.patch')
+backup=('etc/zsh/zprofile')
+md5sums=('11766b0dd674a513810903cd33ffcac4'
+ '24a9335edf77252a7b5f52e079f7aef7'
+ '4fcbc119fdb624a8c483a278f3a82efd')
+
+build() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ patch -p1 -i "${srcdir}/svn-1.7.patch"
+ # FS#16360
+ sed -i 's/init.d/rc.d/g' Doc/Zsh/compsys.yo \
+ Doc/zsh.texi \
+ Completion/Unix/Type/_services \
+ Completion/Unix/Command/_init_d
+ ./configure --prefix=/usr \
+ --bindir=/bin \
+ --enable-etcdir=/etc/zsh \
+ --enable-zshenv=/etc/zsh/zshenv \
+ --enable-zlogin=/etc/zsh/zlogin \
+ --enable-zlogout=/etc/zsh/zlogout \
+ --enable-zprofile=/etc/zsh/zprofile \
+ --enable-zshrc=/etc/zsh/zshrc \
+ --enable-maildir-support \
+ --with-term-lib='ncursesw' \
+ --enable-multibyte \
+ --enable-function-subdirs \
+ --enable-fndir=/usr/share/zsh/functions \
+ --enable-scriptdir=/usr/share/zsh/scripts \
+ --with-tcsetpgrp \
+ --enable-pcre \
+ --enable-cap \
+ --enable-zsh-secure-free
+ make
+}
+
+check() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ # This test wont work with the noatime mount option
+ rm Test/C02cond.ztst
+ HOME="${srcdir}" make check
+}
+
+package() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+ make DESTDIR="${pkgdir}/" install
+ install -D -m644 "${srcdir}/zprofile" "${pkgdir}/etc/zsh/zprofile"
+ install -D -m644 LICENCE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"
+}
diff --git a/testing/zsh/svn-1.7.patch b/testing/zsh/svn-1.7.patch
new file mode 100644
index 000000000..5ef314cc9
--- /dev/null
+++ b/testing/zsh/svn-1.7.patch
@@ -0,0 +1,34 @@
+diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_svn b/Functions/VCS_Info/Backends/VCS_INFO_get_data_svn
+index b1cb730..41cc3e7 100644
+--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_svn
++++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_svn
+@@ -6,12 +6,28 @@
+
+ setopt localoptions noksharrays extendedglob NO_shwordsplit
+ local svnbase svnbranch a b rrn
++local -i rc
+ local -A svninfo parentinfo
+ local -xA hook_com
+
+ svnbase=".";
+ svninfo=()
+-${vcs_comm[cmd]} info --non-interactive | while IFS=: read a b; do svninfo[${a// /_}]="${b## #}"; done
++# Unfortunately, `$pipestatus' is broken currently. Until that problem is
++# resolved, here is a workaround that will get things done, without using it.
++# Clumsily, but that's life.
++local -a dat
++dat=( ${(f)"$(${vcs_comm[cmd]} info --non-interactive 2>&1)"} )
++rc=$?
++(( rc != 0 )) && return 1
++# The following line is the real code, the following is the workaround.
++#${vcs_comm[cmd]} info --non-interactive \
++print -l "${dat[@]}" \
++|& while IFS=: read a b; do
++ svninfo[${a// /_}]="${b## #}"
++done
++#rc=${pipestatus[1]}
++#(( rc != 0 )) && return 1
++
+ while [[ -d "${svnbase}/../.svn" ]]; do
+ parentinfo=()
+ ${vcs_comm[cmd]} info --non-interactive "${svnbase}/.." | while IFS=: read a b; do parentinfo[${a// /_}]="${b## #}"; done
diff --git a/testing/zsh/zprofile b/testing/zsh/zprofile
new file mode 100644
index 000000000..6bfcdf7cb
--- /dev/null
+++ b/testing/zsh/zprofile
@@ -0,0 +1 @@
+emulate sh -c 'source /etc/profile'
diff --git a/testing/zsh/zsh.install b/testing/zsh/zsh.install
new file mode 100644
index 000000000..e2a53bea8
--- /dev/null
+++ b/testing/zsh/zsh.install
@@ -0,0 +1,11 @@
+post_install() {
+ grep -q '/bin/zsh' etc/shells || echo '/bin/zsh' >> etc/shells
+}
+
+post_upgrade() {
+ post_install
+}
+
+pre_remove() {
+ sed -i '/^\/bin\/zsh/d' etc/shells
+}