# $Id$ PNAME="ncurses" PVER="5.7" PBUILD="r3" PCATEGORIE="sys-libs" STATE="unstable" DESCRIPTION="Linux console display library." HOMEPAGE="http://www.gnu.org/software/ncurses/ncurses.html" DEPEND=">= virtual/glibc" SRCFILE="${PNAME}-${PVER}.tar.gz" SRCDIR="${BUILDDIR}/${PNAME}-${PVER}" sminclude mtools multilib SRC_URI=( gnu://${PNAME}/${SRCFILE} mirror://${PNAME}/${SRCFILE} mirror://${PNAME}/${PNAME}-${PVER}-branch-update-20081213.patch ) UP2DATE="updatecmd_gnu ${PNAME} gz" src_prepare() { munpack ${SRCFILE} || die mpatch ${PNAME}-${PVER}-branch-update-20081213.patch || die } src_compile() { # fixes build issues on multilib; do not export any ABI_LDFLAGS EXPORT_ABI_LDFLAGS=false # -hashed-db needs Berkeley DB mconfigure --with-shared --without-debug --without-hashed-db --enable-widec || die # fix parallel make builds mmake -j1 sources || die mmake || die } src_install() { # needed directories minstalldir /$(mlibdir) || die minstall_destdir || die mchmod 755 /usr/$(mlibdir)/\*.${PVER} || die mchmod 644 /usr/$(mlibdir)/libncurses++w.a || die mv ${BINDIR}/usr/$(mlibdir)/libncursesw.so.5* ${BINDIR}/$(mlibdir) || die mlink ../../$(mlibdir)/libncursesw.so.5 /usr/$(mlibdir)/libncursesw.so || die mlink libncursesw.so /usr/$(mlibdir)/libcursesw.so || die # non-widec compat for lib in curses ncurses form panel menu do echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/$(mlibdir)/lib${lib}.so || die mlink lib${lib}w.a /usr/$(mlibdir)/lib${lib}.a || die done mlink libcurses.so /usr/$(mlibdir)/libcursesw.so || die mlink libncurses.so /usr/$(mlibdir)/libcurses.so || die mlink libncursesw.a /usr/$(mlibdir)/libcursesw.a || die mlink libncurses.a /usr/$(mlibdir)/libcurses.a || die mlink libncurses++w.a /usr/$(mlibdir)/libncurses++.a || die # curses-config too mlink ncursesw5-config /usr/bin/ncurses5-config || die # move the -m32 libs also to the right place (multilib) if [[ ${ARCH} = x86_64 ]] then minstalldir /lib || die mchmod 755 /usr/lib/\*.${PVER} || die mchmod 644 /usr/lib/libncurses++w.a || die mv ${BINDIR}/usr/lib/libncursesw.so.5* ${BINDIR}/lib || die mlink ../../lib/libncursesw.so.5 /usr/lib/libncursesw.so || die mlink libncursesw.so /usr/lib/libcursesw.so || die # non-widec compat for lib in curses ncurses form panel menu do echo "INPUT(-l${lib}w)" > ${BINDIR}/usr/lib/lib${lib}.so || die mlink lib${lib}w.a /usr/lib/lib${lib}.a || die done mlink libcurses.so /usr/lib/libcursesw.so || die mlink libncurses.so /usr/lib/libcurses.so || die mlink libncursesw.a /usr/lib/libcursesw.a || die mlink libncurses.a /usr/lib/libcurses.a || die mlink libncurses++w.a /usr/lib/libncurses++.a || die fi # fixes a small man issue if [ -e ${BINDIR}/usr/share/man/tack.1 ] then mv ${BINDIR}/usr/share/man/tack.1 \ ${BINDIR}/usr/share/man/man1 || die fi # fix to enable colors in the default xterm mv ${BINDIR}/usr/share/terminfo/x/xterm \ ${BINDIR}/usr/share/terminfo/x/xterm.orig || die mlink xterm-color /usr/share/terminfo/x/xterm || die minstalldocs ANNOUNCE MANIFEST NEWS README* TO-DO || die } preinstall() { if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so ] then rm ${MROOT}/usr/$(mlibdir)/libncurses.so || die fi if [ -L ${MROOT}/usr/$(mlibdir)/libncurses.so.5 ] then rm ${MROOT}/usr/$(mlibdir)/libncurses.so.5 || die fi if [ -L ${MROOT}/usr/$(mlibdir)/libcurses.so.5 ] then rm ${MROOT}/usr/$(mlibdir)/libcurses.so.5 || die fi if [[ $(mlibdir) != lib ]] then if [ -L ${MROOT}/usr/lib/libncurses.so ] then rm ${MROOT}/usr/lib/libncurses.so || die fi if [ -L ${MROOT}/usr/lib/libncurses.so.5 ] then rm ${MROOT}/usr/lib/libncurses.so.5 || die fi if [ -L ${MROOT}/usr/lib/libcurses.so.5 ] then rm ${MROOT}/usr/lib/libcurses.so.5 || die fi fi } postinstall() { # force ldconfig here if [[ -z ${MROOT} ]] || [[ ${MROOT} = / ]] then /sbin/ldconfig fi }