From 0cfd33b8f4753a0b22785ea92aa78dcf61005f52 Mon Sep 17 00:00:00 2001 From: Juan RP Date: Sun, 27 Feb 2011 14:51:11 +0100 Subject: [PATCH] ncurses: update to 5.8, bump abi_depends. ncurses now builds the widec version by default and provides non-widec for compatiblity. ABI has been bumped because I've enabled "--enable-ext-colors" which changes the soname to foo.so.6. Removed the ncursesw packages. --- srcpkgs/ncurses/depends | 2 +- srcpkgs/ncurses/ncurses-base.template | 15 +----- srcpkgs/ncurses/ncurses-devel.template | 19 ++++--- srcpkgs/ncurses/ncurses-libs.template | 9 ++-- srcpkgs/ncurses/ncurses-term.template | 1 - srcpkgs/ncurses/template | 64 +++++++++++++++++++++--- srcpkgs/ncursesw-devel | 1 - srcpkgs/ncursesw/depends | 2 - srcpkgs/ncursesw/ncursesw-devel.template | 22 -------- srcpkgs/ncursesw/template | 37 -------------- xbps-src/common/mapping_shlib_binpkg.txt | 9 ++-- 11 files changed, 80 insertions(+), 101 deletions(-) delete mode 120000 srcpkgs/ncursesw-devel delete mode 100644 srcpkgs/ncursesw/depends delete mode 100644 srcpkgs/ncursesw/ncursesw-devel.template delete mode 100644 srcpkgs/ncursesw/template diff --git a/srcpkgs/ncurses/depends b/srcpkgs/ncurses/depends index e51aa90cac0..96e17b20cc5 100644 --- a/srcpkgs/ncurses/depends +++ b/srcpkgs/ncurses/depends @@ -1,2 +1,2 @@ -abi_depends=">=5.6" +abi_depends=">=5.8" api_depends="${abi_depends}" diff --git a/srcpkgs/ncurses/ncurses-base.template b/srcpkgs/ncurses/ncurses-base.template index 8b38c762151..c3f95fe7a1e 100644 --- a/srcpkgs/ncurses/ncurses-base.template +++ b/srcpkgs/ncurses/ncurses-base.template @@ -6,25 +6,14 @@ long_desc="${long_desc} This package contains the base files." noarch=yes -revision=1 do_install() { cat $XBPS_SRCPKGDIR/ncurses/base-files | while read line; do if [ -f ${SRCPKGDESTDIR}/${line} ]; then - install -D ${SRCPKGDESTDIR}/${line} ${DESTDIR}/${line} + install -D -m644 ${SRCPKGDESTDIR}/${line} \ + ${DESTDIR}/${line} rm -f ${SRCPKGDESTDIR}/${line} fi done - - mkdir -p ${DESTDIR}/lib/terminfo/a - mkdir -p ${DESTDIR}/lib/terminfo/l - mkdir -p ${DESTDIR}/lib/terminfo/v - - cp ${DESTDIR}/usr/share/terminfo/a/ansi ${DESTDIR}/lib/terminfo/a - cp ${DESTDIR}/usr/share/terminfo/l/linux ${DESTDIR}/lib/terminfo/l - for f in vt100 vt100-am vt100-nav vt102 vt200 vt220 vt52; do - cp ${DESTDIR}/usr/share/terminfo/v/${f} \ - ${DESTDIR}/lib/terminfo/v - done } diff --git a/srcpkgs/ncurses/ncurses-devel.template b/srcpkgs/ncurses/ncurses-devel.template index 9658110e91e..cd716c942a4 100644 --- a/srcpkgs/ncurses/ncurses-devel.template +++ b/srcpkgs/ncurses/ncurses-devel.template @@ -5,21 +5,24 @@ long_desc="${long_desc} This package contains files for development: headers, static libs, etc." -revision=3 - +replaces="ncursesw-devel>=0" +Add_dependency run glibc-devel Add_dependency run ncurses do_install() { mkdir -p ${DESTDIR}/usr/lib mkdir -p ${DESTDIR}/usr/bin - mkdir -p ${DESTDIR}/usr/share/man + mkdir -p ${DESTDIR}/usr/share/man/man1 mv ${SRCPKGDESTDIR}/usr/include ${DESTDIR}/usr - mv ${SRCPKGDESTDIR}/usr/lib/lib*.*a ${DESTDIR}/usr/lib - cd ${DESTDIR}/usr/lib && \ - ln -s ../../lib/libncurses.so.5 libncurses.so && \ - ln -s libncurses.so libcurses.so + mv ${SRCPKGDESTDIR}/usr/lib/*.a ${DESTDIR}/usr/lib mv ${SRCPKGDESTDIR}/usr/share/man/man3 ${DESTDIR}/usr/share/man - mv ${SRCPKGDESTDIR}/usr/bin/ncurses5* ${DESTDIR}/usr/bin + mv ${SRCPKGDESTDIR}/usr/bin/ncursesw6-config ${DESTDIR}/usr/bin + ln -sf ../../usr/bin/ncursesw6-config \ + ${DESTDIR}/usr/bin/ncursesw5-config + ln -sf ../../usr/bin/ncursesw6-config \ + ${DESTDIR}/usr/bin/ncurses5-config + mv ${SRCPKGDESTDIR}/usr/share/man/man1/ncursesw6-config.1* \ + ${DESTDIR}/usr/share/man/man1 } diff --git a/srcpkgs/ncurses/ncurses-libs.template b/srcpkgs/ncurses/ncurses-libs.template index f90aa5297cd..9c461a1f464 100644 --- a/srcpkgs/ncurses/ncurses-libs.template +++ b/srcpkgs/ncurses/ncurses-libs.template @@ -5,8 +5,7 @@ long_desc="${long_desc} This package contains the shared libraries." -revision=3 - +replaces="ncursesw>=0" Add_dependency run glibc Add_dependency run ncurses-base @@ -15,8 +14,8 @@ do_install() mkdir -p ${DESTDIR}/lib mkdir -p ${DESTDIR}/usr/lib - mv ${SRCPKGDESTDIR}/usr/lib/libncurses.so* ${DESTDIR}/lib - chmod 755 ${DESTDIR}/lib/*.so* - mv ${SRCPKGDESTDIR}/usr/lib/lib*.so.* ${DESTDIR}/usr/lib + mv ${SRCPKGDESTDIR}/lib/* ${DESTDIR}/lib + chmod 755 ${DESTDIR}/lib/* + mv ${SRCPKGDESTDIR}/usr/lib/*.so* ${DESTDIR}/usr/lib chmod 755 ${DESTDIR}/usr/lib/*.so* } diff --git a/srcpkgs/ncurses/ncurses-term.template b/srcpkgs/ncurses/ncurses-term.template index b9f587ce509..15b8c2f1310 100644 --- a/srcpkgs/ncurses/ncurses-term.template +++ b/srcpkgs/ncurses/ncurses-term.template @@ -6,7 +6,6 @@ long_desc="${long_desc} This package contains all available terminal descriptions." noarch=yes -revision=1 Add_dependency run ncurses-base diff --git a/srcpkgs/ncurses/template b/srcpkgs/ncurses/template index 4c4bfcb42c2..0a9f4a30171 100644 --- a/srcpkgs/ncurses/template +++ b/srcpkgs/ncurses/template @@ -1,12 +1,11 @@ # Template build file for 'ncurses'. pkgname=ncurses -version=5.7 +version=5.8 distfiles="http://ftp.gnu.org/pub/gnu/ncurses/$pkgname-$version.tar.gz" -build_style=gnu_configure -configure_args="--with-shared --without-debug CFLAGS=-fPIC" +build_style=custom-install short_desc="A System V Release 4.0 curses emulation library" maintainer="Juan RP " -checksum=0a9bdea5c7de8ded5c9327ed642915f2cc380753f12d4ad120ef7da3ea3498f4 +checksum=51597f89fd53aa990321954e33e5b4869c4a5ee6137bfa800f98f91d4b6b54b5 long_desc=" The ncurses (new curses) library is a freeware emulation of System V Release 4.0 curses. It uses terminfo format, supports pads and color and multiple @@ -21,8 +20,59 @@ subpackages="ncurses-base ncurses-devel ncurses-libs ncurses-term" Add_dependency run glibc Add_dependency run ncurses-libs -post_install() +do_build() { - # Remove broken symlinks. - rm -f ${DESTDIR}/usr/lib/lib*.so + mkdir ncurses-build ncursesw-build + cd ${wrksrc}/ncursesw-build + + # widec build + CFLAGS="$XBPS_CFLAGS -fPIC" \ + ../configure --enable-widec --with-shared \ + --prefix=/usr --mandir=/usr/share/man --without-debug \ + --with-manpage-symlinks --without-ada --enable-ext-colors \ + --with-install-prefix=${DESTDIR} + make ${makejobs} + + cd ${wrksrc}/ncurses-build + # non-widec build + CFLAGS="$XBPS_CFLAGS -fPIC" \ + ../configure --prefix=/usr --with-shared \ + --without-debug --without-ada --with-install-prefix=${DESTDIR} + make ${makejobs} +} + +do_install() +{ + cd ${wrksrc}/ncursesw-build + make install + + install -dm755 ${DESTDIR}/lib + mv ${DESTDIR}/usr/lib/libncursesw.so.* ${DESTDIR}/lib + ln -sf ../../lib/libncursesw.so.6 ${DESTDIR}/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 ${DESTDIR}/usr/lib/lib${lib}.so + echo "INPUT(-l${lib}w)" >${DESTDIR}/usr/lib/lib${lib}.so + ln -sf lib${lib}w.a ${DESTDIR}/usr/lib/lib${lib}.a + done + ln -sf libncurses++w.a ${DESTDIR}/usr/lib/libncurses++.a + + # install tput to /bin + install -dm755 ${DESTDIR}/bin/ + mv ${DESTDIR}/usr/bin/tput ${DESTDIR}/bin/tput + + # Some packages look for -lcurses during build + rm -f ${DESTDIR}/usr/lib/libcursesw.so + echo "INPUT(-lncursesw)" >${DESTDIR}/usr/lib/libcursesw.so + ln -sf libncurses.so ${DESTDIR}/usr/lib/libcurses.so + ln -sf libncursesw.a ${DESTDIR}/usr/lib/libcursesw.a + ln -sf libncurses.a ${DESTDIR}/usr/lib/libcurses.a + + # non-widec compatibility library + cd ${wrksrc}/ncurses-build + install -Dm755 lib/libncurses.so.${version} \ + ${DESTDIR}/usr/lib/libncurses.so.${version} + ln -sf libncurses.so.${version} \ + ${DESTDIR}/usr/lib/libncurses.so.5 } diff --git a/srcpkgs/ncursesw-devel b/srcpkgs/ncursesw-devel deleted file mode 120000 index febe7c25a1a..00000000000 --- a/srcpkgs/ncursesw-devel +++ /dev/null @@ -1 +0,0 @@ -ncursesw \ No newline at end of file diff --git a/srcpkgs/ncursesw/depends b/srcpkgs/ncursesw/depends deleted file mode 100644 index e51aa90cac0..00000000000 --- a/srcpkgs/ncursesw/depends +++ /dev/null @@ -1,2 +0,0 @@ -abi_depends=">=5.6" -api_depends="${abi_depends}" diff --git a/srcpkgs/ncursesw/ncursesw-devel.template b/srcpkgs/ncursesw/ncursesw-devel.template deleted file mode 100644 index e1dabd7610f..00000000000 --- a/srcpkgs/ncursesw/ncursesw-devel.template +++ /dev/null @@ -1,22 +0,0 @@ -# Template file for 'ncursesw-devel'. -# -short_desc="${sourcepkg} development files" -long_desc="${long_desc} - - This package contains files for development: headers, static libs, etc." - -revision=2 - -Add_dependency run glibc-devel -Add_dependency run ncurses-devel -Add_dependency run ncursesw - -do_install() -{ - mkdir -p ${DESTDIR}/usr/lib - mkdir -p ${DESTDIR}/usr/bin - - mv ${SRCPKGDESTDIR}/usr/include ${DESTDIR}/usr - mv ${SRCPKGDESTDIR}/usr/lib/lib*.*a ${DESTDIR}/usr/lib - mv ${SRCPKGDESTDIR}/usr/bin/ncursesw5* ${DESTDIR}/usr/bin -} diff --git a/srcpkgs/ncursesw/template b/srcpkgs/ncursesw/template deleted file mode 100644 index cee427411f2..00000000000 --- a/srcpkgs/ncursesw/template +++ /dev/null @@ -1,37 +0,0 @@ -# Template build file for 'ncursesw'. -pkgname=ncursesw -version=5.7 -revision=2 -wrksrc="ncurses-${version}" -distfiles="http://ftp.gnu.org/pub/gnu/ncurses/ncurses-$version.tar.gz" -build_style=gnu_configure -configure_args="--with-shared --without-debug --enable-widec ---includedir=/usr/include/ncursesw CFLAGS=-fPIC" -make_install_target="DESTDIR=$XBPS_DESTDIR/$pkgname-$version install.includes install.libs" -short_desc="Shared libraries for terminal handling (wide character)" -maintainer="Juan RP " -checksum=0a9bdea5c7de8ded5c9327ed642915f2cc380753f12d4ad120ef7da3ea3498f4 -long_desc=" - The ncurses (new curses) library is a freeware emulation of System V Release - 4.0 curses. It uses terminfo format, supports pads and color and multiple - highlights and forms characters and function-key mapping, and has all the - other SYSV-curses enhancements over BSD curses. The distribution includes - the library and support utilities, including a terminfo compiler tic, a - ecompiler infocmp, clear, tput, tset, and a termcap conversion tool captoinfo. - Full manual pages are provided for the library and tools." - -subpackages="$pkgname-devel" -Add_dependency run glibc - -post_install() -{ - rm -f ${DESTDIR}/usr/lib/lib*.so - rm -f ${DESTDIR}/usr/lib/libncursesw.so.5 - mkdir -p ${DESTDIR}/lib - mv ${DESTDIR}/usr/lib/lib*.so.5.7 ${DESTDIR}/lib - for f in panelw formw ncursesw menuw; do - cd ${DESTDIR}/usr/lib && \ - ln -sf ../../lib/lib${f}.so.5.7 lib${f}.so.5 && \ - ln -sf ../../lib/lib${f}.so.5.7 lib${f}.so - done -} diff --git a/xbps-src/common/mapping_shlib_binpkg.txt b/xbps-src/common/mapping_shlib_binpkg.txt index 81edd4b017c..56349610060 100644 --- a/xbps-src/common/mapping_shlib_binpkg.txt +++ b/xbps-src/common/mapping_shlib_binpkg.txt @@ -52,14 +52,15 @@ libppl.so ppl ppl-devel libppl_c.so ppl ppl-devel libstdc++.so libstdc++ libstdc++-devel libssp.so libssp libssp-devel +libcurses.so ncurses-libs ncurses-devel libncurses.so ncurses-libs ncurses-devel libform.so ncurses-libs ncurses-devel libpanel.so ncurses-libs ncurses-devel libmenu.so ncurses-libs ncurses-devel -libncursesw.so ncursesw ncursesw-devel -libformw.so ncursesw ncursesw-devel -libpanelw.so ncursesw ncursesw-devel -libmenuw.so ncursesw ncursesw-devel +libncursesw.so ncurses-libs ncurses-devel +libformw.so ncurses-libs ncurses-devel +libpanelw.so ncurses-libs ncurses-devel +libmenuw.so ncurses-libs ncurses-devel libobjc.so libobjc libobjc-devel libmudflap.so libmudflap libmudflap-devel libmudflapth.so libmudflap libmudflap-devel