diff options
author | Mike Frysinger <vapier@gentoo.org> | 2007-04-08 06:57:18 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2007-04-08 06:57:18 +0000 |
commit | b6eff65a9ddfc1f483fc9f59e46f6cdeabb20df2 (patch) | |
tree | aab7a5fa3fa480128b217e65c1918497cbafb7fc /sys-libs/ncurses | |
parent | +sys-libs/ncurses:ada (diff) | |
download | gentoo-2-b6eff65a9ddfc1f483fc9f59e46f6cdeabb20df2.tar.gz gentoo-2-b6eff65a9ddfc1f483fc9f59e46f6cdeabb20df2.tar.bz2 gentoo-2-b6eff65a9ddfc1f483fc9f59e46f6cdeabb20df2.zip |
Include coverity fixes from upstream.
(Portage version: 2.1.2.3)
Diffstat (limited to 'sys-libs/ncurses')
-rw-r--r-- | sys-libs/ncurses/ChangeLog | 7 | ||||
-rw-r--r-- | sys-libs/ncurses/files/digest-ncurses-5.6-r1 | 6 | ||||
-rw-r--r-- | sys-libs/ncurses/ncurses-5.6-r1.ebuild | 151 |
3 files changed, 163 insertions, 1 deletions
diff --git a/sys-libs/ncurses/ChangeLog b/sys-libs/ncurses/ChangeLog index 9cf0d5d10ea5..7dc64b382b76 100644 --- a/sys-libs/ncurses/ChangeLog +++ b/sys-libs/ncurses/ChangeLog @@ -1,6 +1,11 @@ # ChangeLog for sys-libs/ncurses # Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-libs/ncurses/ChangeLog,v 1.131 2007/02/21 06:52:44 vapier Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-libs/ncurses/ChangeLog,v 1.132 2007/04/08 06:57:18 vapier Exp $ + +*ncurses-5.6-r1 (08 Apr 2007) + + 08 Apr 2007; Mike Frysinger <vapier@gentoo.org> +ncurses-5.6-r1.ebuild: + Include coverity fixes from upstream. 21 Feb 2007; Mike Frysinger <vapier@gentoo.org> ncurses-5.4-r6.ebuild, ncurses-5.5-r3.ebuild, ncurses-5.6.ebuild: diff --git a/sys-libs/ncurses/files/digest-ncurses-5.6-r1 b/sys-libs/ncurses/files/digest-ncurses-5.6-r1 new file mode 100644 index 000000000000..93a3482eb6c2 --- /dev/null +++ b/sys-libs/ncurses/files/digest-ncurses-5.6-r1 @@ -0,0 +1,6 @@ +MD5 27607b10fef869740cbcc408d86695b1 ncurses-5.6-coverity.patch.gz 6196 +RMD160 b11682ae9e043be8d6c50f040d8531f80fc26ce8 ncurses-5.6-coverity.patch.gz 6196 +SHA256 3deeef017c739116c17574e7fd235b1b05053f5c50c7bfeeee2e3f8e4332380e ncurses-5.6-coverity.patch.gz 6196 +MD5 b6593abe1089d6aab1551c105c9300e3 ncurses-5.6.tar.gz 2402592 +RMD160 1a878819c43e6426500fd74ccedf0a032ef399d8 ncurses-5.6.tar.gz 2402592 +SHA256 f9cac2b31683a37d65bc37119599752198a0691e462d0d1a252cf9815f5724d5 ncurses-5.6.tar.gz 2402592 diff --git a/sys-libs/ncurses/ncurses-5.6-r1.ebuild b/sys-libs/ncurses/ncurses-5.6-r1.ebuild new file mode 100644 index 000000000000..1ec5ec73faad --- /dev/null +++ b/sys-libs/ncurses/ncurses-5.6-r1.ebuild @@ -0,0 +1,151 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-libs/ncurses/ncurses-5.6-r1.ebuild,v 1.1 2007/04/08 06:57:18 vapier Exp $ + +inherit eutils flag-o-matic toolchain-funcs + +MY_PV=${PV:0:3} +PV_SNAP=${PV:4} +MY_P=${PN}-${MY_PV} +DESCRIPTION="console display library" +HOMEPAGE="http://www.gnu.org/software/ncurses/ http://dickey.his.com/ncurses/" +SRC_URI="mirror://gnu/ncurses/${MY_P}.tar.gz + ftp://invisible-island.net/ncurses/${PV}/${P}-coverity.patch.gz" + +LICENSE="MIT" +SLOT="5" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" +IUSE="bootstrap build debug doc gpm minimal nocxx trace unicode" + +DEPEND="gpm? ( sys-libs/gpm )" + +S=${WORKDIR}/${MY_P} + +src_unpack() { + unpack ${A} + cd "${S}" + [[ -n ${PV_SNAP} ]] && epatch "${WORKDIR}"/${MY_P}-${PV_SNAP}-patch.sh + epatch "${WORKDIR}"/${P}-coverity.patch + epatch "${FILESDIR}"/${PN}-5.6-gfbsd.patch +} + +src_compile() { + tc-export BUILD_CC + + # Protect the user from themselves #115036 + unset TERMINFO + + # From version 5.3, ncurses also build c++ bindings, and as + # we do not have a c++ compiler during bootstrap, disable + # building it. We will rebuild ncurses after gcc's second + # build in bootstrap.sh. + local myconf="" + ( use build || use bootstrap || use nocxx ) \ + && myconf="${myconf} --without-cxx --without-cxx-binding --without-ada" + + # First we build the regular ncurses ... + mkdir "${WORKDIR}"/narrowc + cd "${WORKDIR}"/narrowc + do_compile ${myconf} + + # Then we build the UTF-8 version + if use unicode ; then + mkdir "${WORKDIR}"/widec + cd "${WORKDIR}"/widec + do_compile ${myconf} --enable-widec --includedir=/usr/include/ncursesw + fi +} +do_compile() { + ECONF_SOURCE=${S} + + local mylibprefix="" + [[ ${CHOST} == *-darwin* ]] && mylibprefix="/usr" + + # We need the basic terminfo files in /etc, bug #37026. We will + # add '--with-terminfo-dirs' and then populate /etc/terminfo in + # src_install() ... + # The chtype/mmask-t settings below are to retain ABI compat + # with ncurses-5.4 so dont change em ! + econf \ + --libdir=${mylibprefix}/$(get_libdir) \ + --with-terminfo-dirs="/etc/terminfo:/usr/share/terminfo" \ + --disable-termcap \ + --with-shared \ + --with-rcs-ids \ + --enable-symlinks \ + --enable-const \ + --with-chtype='long' \ + --with-mmask-t='long' \ + --with-manpage-format=normal \ + $(use_with debug) \ + $(use_with gpm) \ + $(use_with trace) \ + "$@" \ + || die "configure failed" + + # A little hack to fix parallel builds ... they break when + # generating sources so if we generate the sources first (in + # non-parallel), we can then build the rest of the package + # in parallel. This is not really a perf hit since the source + # generation is quite small. -vapier + emake -j1 sources || die "make sources failed" + emake || die "make failed" +} + +src_install() { + # install unicode version second so that the binaries in /usr/bin + # support both wide and narrow + cd "${WORKDIR}"/narrowc + emake DESTDIR="${D}" install || die "make narrowc install failed" + if use unicode ; then + cd "${WORKDIR}"/widec + emake DESTDIR="${D}" install || die "make widec install failed" + fi + + if [[ ${CHOST} != *-darwin* ]] ; then + # Move static and extraneous ncurses libraries out of /lib + dodir /usr/$(get_libdir) + cd "${D}"/$(get_libdir) + mv lib{form,menu,panel}.so* *.a "${D}"/usr/$(get_libdir)/ + gen_usr_ldscript lib{,n}curses.so + if use unicode ; then + mv lib{form,menu,panel}w.so* "${D}"/usr/$(get_libdir)/ + gen_usr_ldscript lib{,n}cursesw.so + fi + fi + + # We need the basic terminfo files in /etc, bug #37026 + einfo "Installing basic terminfo files in /etc..." + for x in ansi console dumb linux rxvt screen sun vt{52,100,102,200,220} \ + xterm xterm-color xterm-xfree86 + do + local termfile=$(find "${D}"/usr/share/terminfo/ -name "${x}" 2>/dev/null) + local basedir=$(basename $(dirname "${termfile}")) + + if [[ -n ${termfile} ]] ; then + dodir /etc/terminfo/${basedir} + mv ${termfile} "${D}"/etc/terminfo/${basedir}/ + dosym ../../../../etc/terminfo/${basedir}/${x} \ + /usr/share/terminfo/${basedir}/${x} + fi + done + + # Build fails to create this ... + dosym ../share/terminfo /usr/$(get_libdir)/terminfo + + echo "CONFIG_PROTECT_MASK=\"/etc/terminfo\"" > "${T}"/50ncurses + doenvd "${T}"/50ncurses + + use minimal && rm -r "${D}"/usr/share/terminfo + cd "${S}" + dodoc ANNOUNCE MANIFEST NEWS README* TO-DO doc/*.doc + use doc && dohtml -r doc/html/ +} + +pkg_preinst() { + use unicode || preserve_old_lib /$(get_libdir)/libncursesw.so.5 +} + +pkg_postinst() { + use unicode || preserve_old_lib_notify /$(get_libdir)/libncursesw.so.5 +} |