[arch-commits] Commit in ncurses/trunk (PKGBUILD)

Allan McRae allan at archlinux.org
Sun Aug 17 02:45:35 UTC 2008


    Date: Saturday, August 16, 2008 @ 22:45:34
  Author: allan
Revision: 9009

upgpkg: ncurses 5.6-7

Modified:
  ncurses/trunk/PKGBUILD

----------+
 PKGBUILD |   94 +++++++++++++++++++++++++------------------------------------
 1 file changed, 40 insertions(+), 54 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2008-08-17 02:42:53 UTC (rev 9008)
+++ PKGBUILD	2008-08-17 02:45:34 UTC (rev 9009)
@@ -1,75 +1,61 @@
 # $Id$
-# Maintainer: judd <jvinet at zeroflux.org>
+# Maintainer: Allan McRae <allan at archlinux.org>
+# Contributor: judd <jvinet at zeroflux.org>
+
 pkgname=ncurses
 pkgver=5.6
-pkgrel=6
+pkgrel=7
 pkgdesc="A System V Release 4.0 curses emulation library"
-arch=(i686 x86_64)
+arch=('i686' 'x86_64')
 url="http://www.gnu.org/software/ncurses/ncurses.html"
 license=('MIT')
 groups=('base')
 depends=('glibc')
-source=(ftp://ftp.gnu.org/pub/gnu/$pkgname/$pkgname-$pkgver.tar.gz)
-md5sums=('b6593abe1089d6aab1551c105c9300e3')
+source=(ftp://ftp.gnu.org/pub/gnu/${pkgname}/${pkgname}-${pkgver}.tar.gz
+        ftp://invisible-island.net/ncurses/${pkgver}/${pkgname}-${pkgver}-coverity.patch.gz)
+md5sums=('b6593abe1089d6aab1551c105c9300e3'
+         '27607b10fef869740cbcc408d86695b1')
 options=(!makeflags)
 
 build() {
-  cd $startdir/src/$pkgname-$pkgver
+  cd ${srcdir}/${pkgname}-${pkgver}
+  patch -Np1 -i ${srcdir}/${pkgname}-${pkgver}-coverity.patch
 
-  # The chtype/mmask-t settings below are to retain ABI compat
-  # with ncurses-5.4 so dont change em !
-  # we should test in next update if we can drop it.
-if [ "$CARCH" == "x86_64" ]; then
-  ./configure --prefix=/usr \
+  ./configure --prefix=/usr --mandir=/usr/share/man \
      --with-shared --with-normal --without-debug --without-ada \
-     --with-install-prefix=$startdir/pkg \
-     --with-chtype='long' --with-mmask-t='long'
-  else 
-     ./configure --prefix=/usr \
-     --with-shared --with-normal --without-debug --without-ada \
-     --with-install-prefix=$startdir/pkg
-fi
+     --with-install-prefix=${pkgdir} --enable-widec 
   make || return 1
   make install
-  mkdir -p $startdir/pkg/lib
-  cd $startdir/pkg/usr/lib
-  mv libncurses.so.$pkgver ../../lib
-  ln -sf ../../lib/libncurses.so.$pkgver libncurses.so.$pkgver
-  cd $startdir/pkg/lib
-  ln -sf libncurses.so.$pkgver libncurses.so.5
-  rm -f $startdir/pkg/lib/libcurses.so
 
-  # build unicode support libs
-  cd $startdir/src/$pkgname-$pkgver
-  make clean
-if [ "$CARCH" == "x86_64" ]; then
-  ./configure --prefix=/usr \
-     --with-shared --with-normal --without-debug --without-ada \
-     --with-install-prefix=$startdir/pkg --enable-widec \
-     --with-chtype='long' --with-mmask-t='long'
-  else
-  ./configure --prefix=/usr \
-     --with-shared --with-normal --without-debug --without-ada \
-     --with-install-prefix=$startdir/pkg --enable-widec
-fi
-  make || return 1
-  make install
-  
-  mkdir $startdir/pkg/usr/include/ncursesw
-  ln -sf /usr/include/ncurses.h $startdir/pkg/usr/include/ncursesw
-  # fix library for tput, we call it in initscripts!
-  cd $startdir/pkg/usr/lib
-  mv libncursesw.so.$pkgver ../../lib
-  ln -sf ../../lib/libncursesw.so.$pkgver libncursesw.so.$pkgver
-  cd $startdir/pkg/lib
-  ln -sf libncursesw.so.$pkgver libncursesw.so.5
+  # fix library permissions
+  chmod 644 ${pkgdir}/usr/lib/libncurses++w.a
 
+  # move libraries needed for boot to /lib (we call tput in initscripts)
+  mkdir -p ${pkgdir}/lib
+  mv ${pkgdir}/usr/lib/libncursesw.so.5* ${pkgdir}/lib
+  ln -sf ../../lib/libncursesw.so.5 ${pkgdir}/usr/lib/libncursesw.so
+
+  # Fool packages looking to link to non-wide-character ncurses libraries
+  for lib in curses ncurses form panel menu ; do \
+    rm -f ${pkgdir}/usr/lib/lib${lib}.so ; \
+    echo "INPUT(-l${lib}w)" >${pkgdir}/usr/lib/lib${lib}.so ; \
+    ln -sf lib${lib}w.a ${pkgdir}/usr/lib/lib${lib}.a ; \
+  done
+  ln -sf libncurses++w.a ${pkgdir}/usr/lib/libncurses++.a
+
   # install tput to /bin
-  mkdir $startdir/pkg/bin/
-  mv $startdir/pkg/usr/bin/tput $startdir/pkg/bin/tput
+  mkdir ${pkgdir}/bin/
+  mv ${pkgdir}/usr/bin/tput ${pkgdir}/bin/tput
 
+  # Some packages look for -lcurses during build
+  rm -f ${pkgdir}/usr/lib/libcursesw.so
+  echo "INPUT(-lncursesw)" >${pkgdir}/usr/lib/libcursesw.so
+  ln -sf libncurses.so ${pkgdir}/usr/lib/libcurses.so
+  ln -sf libncursesw.a ${pkgdir}/usr/lib/libcursesw.a
+  ln -sf libncurses.a ${pkgdir}/usr/lib/libcurses.a
+
   # install license, rip it from the readme
-  cd $startdir/src/$pkgname-$pkgver
-  mkdir -p $startdir/pkg/usr/share/licenses/$pkgname
-  grep -B 100 '$Id' README > $startdir/pkg/usr/share/licenses/$pkgname/license.txt
+  cd ${srcdir}/${pkgname}-${pkgver}
+  mkdir -p ${pkgdir}/usr/share/licenses/$pkgname
+  grep -B 100 '$Id' README > ${pkgdir}/usr/share/licenses/${pkgname}/license.txt
 }




More information about the arch-commits mailing list