summaryrefslogtreecommitdiff
path: root/core/readline
diff options
context:
space:
mode:
Diffstat (limited to 'core/readline')
-rw-r--r--core/readline/PKGBUILD59
-rw-r--r--core/readline/inputrc36
-rw-r--r--core/readline/readline.install21
3 files changed, 116 insertions, 0 deletions
diff --git a/core/readline/PKGBUILD b/core/readline/PKGBUILD
new file mode 100644
index 000000000..0ed221910
--- /dev/null
+++ b/core/readline/PKGBUILD
@@ -0,0 +1,59 @@
+# $Id: PKGBUILD 111803 2011-03-01 02:29:23Z allan $
+# Maintainer: Allan McRae <allan@archlinux.org>
+# Contributor: judd <jvinet@zeroflux.org>
+
+pkgname=readline
+_basever=6.2
+_patchlevel=001 #prepare for some patches
+pkgver=$_basever.$_patchlevel
+pkgrel=1
+pkgdesc="GNU readline library"
+arch=('i686' 'x86_64')
+url="http://tiswww.case.edu/php/chet/readline/rltop.html"
+license=('GPL')
+depends=('glibc' 'ncurses')
+backup=('etc/inputrc')
+source=(http://ftp.gnu.org/gnu/readline/readline-$_basever.tar.gz
+ inputrc)
+if [ $_patchlevel -gt 00 ]; then
+ for (( p=1; p<=$((10#${_patchlevel})); p++ )); do
+ source=(${source[@]} http://ftp.gnu.org/gnu/readline/readline-$_basever-patches/readline${_basever//./}-$(printf "%03d" $p))
+ done
+fi
+md5sums=('67948acb2ca081f23359d0256e9a271c'
+ '58d54966c1191db45973cb3191ac621a'
+ '83287d52a482f790dfb30ec0a8746669')
+
+build() {
+ cd ${srcdir}/${pkgname}-$_basever
+ for p in ../readline${_basever//./}-*; do
+ [ -e "$p" ] || continue
+ msg "applying patch ${p}"
+ patch -Np0 -i ${p}
+ done
+
+ # Remove RPATH from shared objects (FS#14366)
+ sed -i 's|-Wl,-rpath,$(libdir) ||g' support/shobj-conf
+
+ # build with -fPIC for x86_64 (FS#15634)
+ [ $CARCH == "x86_64" ] && CFLAGS="$CFLAGS -fPIC"
+
+ ./configure --prefix=/usr --libdir=/lib
+ make SHLIB_LIBS=-lncurses
+}
+
+package() {
+ cd ${srcdir}/${pkgname}-$_basever
+ make DESTDIR=${pkgdir} install
+
+ install -Dm644 ${srcdir}/inputrc ${pkgdir}/etc/inputrc
+
+ # FHS recommends only shared libs in /lib
+ install -dm755 $pkgdir/usr/lib
+ mv $pkgdir/lib/*.a $pkgdir/usr/lib
+
+ # to make the linker find the shared lib and fix compile issues
+ cd ${pkgdir}/usr/lib
+ ln -sv /lib/libreadline.so .
+ ln -sv /lib/libhistory.so .
+}
diff --git a/core/readline/inputrc b/core/readline/inputrc
new file mode 100644
index 000000000..fd13a673b
--- /dev/null
+++ b/core/readline/inputrc
@@ -0,0 +1,36 @@
+# do not bell on tab-completion
+#set bell-style none
+
+set meta-flag on
+set input-meta on
+set convert-meta off
+set output-meta on
+
+$if mode=emacs
+
+# for linux console and RH/Debian xterm
+"\e[1~": beginning-of-line
+"\e[4~": end-of-line
+"\e[5~": beginning-of-history
+"\e[6~": end-of-history
+"\e[7~": beginning-of-line
+"\e[3~": delete-char
+"\e[2~": quoted-insert
+"\e[5C": forward-word
+"\e[5D": backward-word
+"\e\e[C": forward-word
+"\e\e[D": backward-word
+"\e[1;5C": forward-word
+"\e[1;5D": backward-word
+
+# for rxvt
+"\e[8~": end-of-line
+
+# for non RH/Debian xterm, can't hurt for RH/DEbian xterm
+"\eOH": beginning-of-line
+"\eOF": end-of-line
+
+# for freebsd console
+"\e[H": beginning-of-line
+"\e[F": end-of-line
+$endif
diff --git a/core/readline/readline.install b/core/readline/readline.install
new file mode 100644
index 000000000..a8ffe80c6
--- /dev/null
+++ b/core/readline/readline.install
@@ -0,0 +1,21 @@
+infodir=usr/share/info
+filelist=(history.info readline.info rluserman.info)
+
+post_install() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+
+post_upgrade() {
+ post_install $1
+}
+
+pre_remove() {
+ [ -x usr/bin/install-info ] || return 0
+ for file in ${filelist[@]}; do
+ install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
+ done
+}
+