summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-devel/bc')
-rw-r--r--sys-devel/bc/Manifest1
-rw-r--r--sys-devel/bc/bc-1.06.95-r1.ebuild52
-rw-r--r--sys-devel/bc/bc-1.06.95-r2.ebuild55
-rw-r--r--sys-devel/bc/bc-1.06.95.ebuild39
-rw-r--r--sys-devel/bc/files/bc-1.06.95-mem-leak.patch24
-rw-r--r--sys-devel/bc/files/bc-1.06.95-void_uninitialized.patch13
-rw-r--r--sys-devel/bc/metadata.xml5
7 files changed, 189 insertions, 0 deletions
diff --git a/sys-devel/bc/Manifest b/sys-devel/bc/Manifest
new file mode 100644
index 000000000000..2bf857b81f13
--- /dev/null
+++ b/sys-devel/bc/Manifest
@@ -0,0 +1 @@
+DIST bc-1.06.95.tar.bz2 290069 SHA256 7ee4abbcfac03d8a6e1a8a3440558a3d239d6b858585063e745c760957725ecc SHA512 16ec13f87ef76ad4de77d378ef8d65a582adca1bf661c9d7675e78d940680c77e81a00a01817fde7c1ad1524562d6f933caa5c42a0686f3f85aadbb39393afb1 WHIRLPOOL e91adb7b1fd42c4d47dad76f994c51ee7a8d962a24cb1b0cbeaa992fe1be59878016d5883506ec4153293daf48fbe3f345bb88fbe3f6276b3353c89573a612af
diff --git a/sys-devel/bc/bc-1.06.95-r1.ebuild b/sys-devel/bc/bc-1.06.95-r1.ebuild
new file mode 100644
index 000000000000..f6a271287255
--- /dev/null
+++ b/sys-devel/bc/bc-1.06.95-r1.ebuild
@@ -0,0 +1,52 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="2"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Handy console-based calculator utility"
+HOMEPAGE="http://www.gnu.org/software/bc/bc.html"
+SRC_URI="mirror://gnu-alpha/bc/${P}.tar.bz2
+ mirror://gnu/bc/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="libedit readline static"
+
+RDEPEND="readline? ( >=sys-libs/readline-4.1 >=sys-libs/ncurses-5.2 )
+ libedit? ( dev-libs/libedit )"
+DEPEND="${RDEPEND}
+ sys-devel/flex"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-void_uninitialized.patch #349339
+}
+
+src_configure() {
+ local myconf
+ if use readline ; then
+ myconf="--with-readline --without-libedit"
+ elif use libedit ; then
+ myconf="--without-readline --with-libedit"
+ else
+ myconf="--without-readline --without-libedit"
+ fi
+ use static && append-ldflags -static
+ econf ${myconf}
+
+ # Do not regen docs -- configure produces a small fragment that includes
+ # the version info which causes all pages to regen (newer file). #554774
+ touch -r doc doc/*
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)" || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS FAQ NEWS README ChangeLog
+}
diff --git a/sys-devel/bc/bc-1.06.95-r2.ebuild b/sys-devel/bc/bc-1.06.95-r2.ebuild
new file mode 100644
index 000000000000..70ce7608d805
--- /dev/null
+++ b/sys-devel/bc/bc-1.06.95-r2.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Handy console-based calculator utility"
+HOMEPAGE="http://www.gnu.org/software/bc/bc.html"
+SRC_URI="mirror://gnu-alpha/bc/${P}.tar.bz2
+ mirror://gnu/bc/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="libedit readline static"
+
+RDEPEND="!readline? ( libedit? ( dev-libs/libedit:= ) )
+ readline? (
+ >=sys-libs/readline-4.1:0=
+ >=sys-libs/ncurses-5.2:=
+ )"
+DEPEND="${RDEPEND}
+ sys-devel/flex"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-void_uninitialized.patch #349339
+ epatch "${FILESDIR}"/${P}-mem-leak.patch #264889
+}
+
+src_configure() {
+ local libedit
+ if use readline ; then
+ libedit="--without-libedit"
+ else
+ libedit=$(use_with libedit)
+ fi
+ use static && append-ldflags -static
+ # Clobber any CONFIG_SHELL setting the user has forced on us.
+ # We should be able to delete this w/the next release as it
+ # should use updated autoconf.
+ CONFIG_SHELL=/bin/bash \
+ econf \
+ $(use_with readline) \
+ ${libedit}
+
+ # Do not regen docs -- configure produces a small fragment that includes
+ # the version info which causes all pages to regen (newer file). #554774
+ touch -r doc doc/*
+}
+
+src_compile() {
+ emake AR="$(tc-getAR)"
+}
diff --git a/sys-devel/bc/bc-1.06.95.ebuild b/sys-devel/bc/bc-1.06.95.ebuild
new file mode 100644
index 000000000000..17206129c986
--- /dev/null
+++ b/sys-devel/bc/bc-1.06.95.ebuild
@@ -0,0 +1,39 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+inherit eutils flag-o-matic toolchain-funcs
+
+DESCRIPTION="Handy console-based calculator utility"
+HOMEPAGE="http://www.gnu.org/software/bc/bc.html"
+SRC_URI="mirror://gnu-alpha/bc/${P}.tar.bz2
+ mirror://gnu/bc/${P}.tar.bz2"
+
+LICENSE="GPL-2 LGPL-2.1"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~sparc-fbsd ~x86-fbsd ~x86-freebsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="libedit readline static"
+
+RDEPEND="readline? ( >=sys-libs/readline-4.1 >=sys-libs/ncurses-5.2 )
+ libedit? ( dev-libs/libedit )"
+DEPEND="${RDEPEND}
+ sys-devel/flex"
+
+src_compile() {
+ local myconf
+ if use readline ; then
+ myconf="--with-readline --without-libedit"
+ elif use libedit ; then
+ myconf="--without-readline --with-libedit"
+ else
+ myconf="--without-readline --without-libedit"
+ fi
+ use static && append-ldflags -static
+ econf ${myconf} || die
+ emake || die
+}
+
+src_install() {
+ emake install DESTDIR="${D}" || die
+ dodoc AUTHORS FAQ NEWS README ChangeLog
+}
diff --git a/sys-devel/bc/files/bc-1.06.95-mem-leak.patch b/sys-devel/bc/files/bc-1.06.95-mem-leak.patch
new file mode 100644
index 000000000000..13628464b540
--- /dev/null
+++ b/sys-devel/bc/files/bc-1.06.95-mem-leak.patch
@@ -0,0 +1,24 @@
+https://bugs.gentoo.org/264889
+
+--- a/bc/bc.y
++++ b/bc/bc.y
+@@ -569,6 +569,7 @@ expression : named_expression ASSIGN_OP
+ generate (">");
+ break;
+ }
++ free($2);
+ }
+ | expression '+' expression
+ {
+--- a/bc/util.c
++++ b/bc/util.c
+@@ -602,8 +602,7 @@ lookup (name, namekind)
+ case FUNCTDEF:
+ if (id->f_name != 0)
+ {
+- if (namekind != FUNCT)
+- free(name);
++ free(name);
+ /* Check to see if we are redefining a math lib function. */
+ if (use_math && namekind == FUNCTDEF && id->f_name <= 6)
+ id->f_name = next_func++;
diff --git a/sys-devel/bc/files/bc-1.06.95-void_uninitialized.patch b/sys-devel/bc/files/bc-1.06.95-void_uninitialized.patch
new file mode 100644
index 000000000000..3304973f89af
--- /dev/null
+++ b/sys-devel/bc/files/bc-1.06.95-void_uninitialized.patch
@@ -0,0 +1,13 @@
+http://www.pixelbeat.org/programming/oss_bug_flow.html
+https://bugs.gentoo.org/349339
+
+--- bc/storage.c
++++ bc/storage.c
+@@ -99,6 +99,7 @@
+ {
+ f = &functions[indx];
+ f->f_defined = FALSE;
++ f->f_void = FALSE;
+ f->f_body = (char *) bc_malloc (BC_START_SIZE);
+ f->f_body_size = BC_START_SIZE;
+ f->f_code_size = 0;
diff --git a/sys-devel/bc/metadata.xml b/sys-devel/bc/metadata.xml
new file mode 100644
index 000000000000..96a2d586367d
--- /dev/null
+++ b/sys-devel/bc/metadata.xml
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<herd>base-system</herd>
+</pkgmetadata>