summaryrefslogtreecommitdiff
path: root/sys-devel/bison
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /sys-devel/bison
reinit the tree, so we can have metadata
Diffstat (limited to 'sys-devel/bison')
-rw-r--r--sys-devel/bison/Manifest15
-rw-r--r--sys-devel/bison/bison-1.875d.ebuild64
-rw-r--r--sys-devel/bison/bison-2.4.3.ebuild48
-rw-r--r--sys-devel/bison/bison-2.7.1.ebuild61
-rw-r--r--sys-devel/bison/bison-3.0.4-r1.ebuild73
-rw-r--r--sys-devel/bison/files/bison-1.32-extfix.patch28
-rw-r--r--sys-devel/bison/files/bison-2.4.3-no-gets.patch22
-rw-r--r--sys-devel/bison/files/bison-2.4.3-uclibc-sched_param-def.patch19
-rw-r--r--sys-devel/bison/files/bison-3.0.4-optional-perl.patch500
-rw-r--r--sys-devel/bison/metadata.xml8
10 files changed, 838 insertions, 0 deletions
diff --git a/sys-devel/bison/Manifest b/sys-devel/bison/Manifest
new file mode 100644
index 000000000000..71a6c264bffb
--- /dev/null
+++ b/sys-devel/bison/Manifest
@@ -0,0 +1,15 @@
+AUX bison-1.32-extfix.patch 1170 SHA256 a47285e1b6f1ee53b8def53380068ad6a86ccd09e3338481f6d3d14c7e8b31c4 SHA512 6f98d6ea4d6564c3890ede54994654af87d79a87e615e03856a71f3470876fe42768deeabe31f9393531a35619a7e00844ff2a3d87214754cfd04a25d591cc57 WHIRLPOOL 800744be43d9dc39ba4c7cba4342ee5c2360cf9792c0ff5971da91fe78df85358ac1b7cab5c32244898b69ced352ce159685daa80cf32317db4ab92610b2153d
+AUX bison-2.4.3-no-gets.patch 780 SHA256 aae4bb53fa827685a1005b48b3149cb96b83feb43ba104d5da6ef223676cef70 SHA512 cf7d60c143bf27a546c6fa04f08b58b0c297996f25fe28e85863795f51040772a85316ca1464204a84630322df16893d636331b7e4953f6c1718d680a5bc827b WHIRLPOOL 4415b7eebe6df47638df1c7f5c864a4296af0eddc18d56ccc24f926db48fb78699d3a864d08648867f06cfea88a3fc745bbd87865469c559f96b2b199cf24a75
+AUX bison-2.4.3-uclibc-sched_param-def.patch 580 SHA256 b111051eaaa15ce6e53ae168d06e0fb9688c70141060abfe0a15c5d1400fbaf9 SHA512 87a49e69aec0b36313132fc7a9fb520016e4dc4399a9af9a91636a588326825de3a65dd6bcdda8de20e364ec163afcb41b0453f09ce4102d179ce04279c8654d WHIRLPOOL 5f0d690078d004231d31adcbdea98c3f3059c60265595ac46cbb0d4e45638ae9e54c9ee08040842d278a4ddadd5744a6bce19753475978cf7360ce8bf2be9d7b
+AUX bison-3.0.4-optional-perl.patch 21963 SHA256 9fc611ebc3714aa9d517909f1ca49ada6786569e1a816cb2a71991f122033dbb SHA512 d118dcf8a104edf5d81b7f96254b15f6fef1332c7957c5cc3a484d3295436afa166c249acf4fa8834c5f194daa3fbfae79c0168b0fa980a4cb8de537c5b3e3cf WHIRLPOOL 3207d2396ef2dbcb5eb0a283a45cc64e84f79443921260008de783693e84894a877ec1f073aebcb19586ce76eeffab5498a57441c4b5266b06ee680317b0d46b
+DIST bison-1.875d.tar.bz2 882745 SHA256 37ff8d673e35838c195d614bc402573d1268c997796e79b831053f4a22e03808 SHA512 f84c6cf41a289ea7e0805cf9b0da6fe2d77f2e03a35c3db7d2e36e5186bba7c0853c3d518bd89f6cfa1030e346e046aa03b33974bb892dbd8f040e5ea2de1126 WHIRLPOOL 213e02b33b4cd65c4c8ad5a37b77cce75a366e1d5ad0837887763c75c5e30eb3d85b7ba8eb71ed86bb86fb3e23624a7c627558f492778ec29e6e79fd30e7c902
+DIST bison-2.4.3.tar.bz2 1652612 SHA256 935302ef194c7f0974fed913eaac8100be512094eab573cf0b67bdf7db1d3a05 SHA512 b789f55d9cb95c1b4fba004691ed9f79b76da55020c9b202e1704a02aab1ba43b9fc1015e29843ed552e6df6165cef9c6ebc8a29d15a21c6e194cad8a42ab055 WHIRLPOOL 0e0e61970a791e53afc6cc85f53cebf0050d885077dd9b2394d79549bac389ffa7e477e003525556858b6fa64c11ce93653bba1c861bd2acd67f85181e167558
+DIST bison-2.7.1.tar.xz 1781068 SHA256 b409adcbf245baadb68d2f66accf6fdca5e282cafec1b865f4b5e963ba8ea7fb SHA512 ac0c7ca57142bcb84af498f606acb86091984a00359294fbf721a4ca8112f9fcf26497f7dd2e65f527e04a6e1de94142ecb76602d407e548475970e5a566d370 WHIRLPOOL 171f6b18c3f205d746092bdd37bf113ab83944db468f81cbf5004573584c717b6fc1a10d112fe7178be222b51b746fed9da58a9065b7f2f7e65a15851500779e
+DIST bison-3.0.4.tar.xz 1973796 SHA256 a72428c7917bdf9fa93cb8181c971b6e22834125848cf1d03ce10b1bb0716fe1 SHA512 bbdc23e7772e49da1c7c47e66d4e4efbfbfe9b21dbc59bf3ad9a6e573eecac6c9f52c7f11a64be9897e8deb99ef7ba015164aa8232aa391b901dd7db03632412 WHIRLPOOL 41da7b0aa18bf61f621d59d372dc2ca9e116f6fa0d5c8891b51a01dda6d9393005c76773dbefbadeb30884bb328379197d2026809d62d49d8e2022b9b49da244
+EBUILD bison-1.875d.ebuild 1678 SHA256 a66818b08b6671d95c7acdf9e5f59f5899eae006831c820b6f6f6f62d201cdc6 SHA512 5990adcb955692a75ef33de6b2699cd4d4577ffb002886ce09f6eafcb45cff25da5ef3e3e0940b0e3b160314cccf3ceb750883a448874cab0c58283a724591fd WHIRLPOOL 44d6569fc6015fafca8cf1e88b45776085b80e6f5beeeb9024a1008c4f414ec9d3fe19e38d8eb8b70fb5aa9e6476631ccd791c2a0fcd91c26030585d67b4a988
+EBUILD bison-2.4.3.ebuild 1132 SHA256 868cd13f372b13570d13a0ade679ef182d415cf13f9e5568f11587b7568acb36 SHA512 c51aa2d4be14a3b1cff50a751ae842c80f1e8d7d1959e99e58f56ee66506628a5acce5a320273b66bcd32fc6ed559e9cb1141c010fc2279222b0b89ee9963fad WHIRLPOOL bcb365cee05343327c3ed423e80d0107a54e5af67093275b84e2f5ac3ec98b9f12baa27f124dbb8a55db4d68d6e841add281192673558ea0d4bb7cbbf21a3e50
+EBUILD bison-2.7.1.ebuild 1653 SHA256 466600836e5266c4dedf385d3234ac2d4454507da06a2fba027cffd6b3b60681 SHA512 44a30f63ea6f1fb40eea64932c1aa1abf1dc84523fb3e9cdba9d57ee47f3ca986a45684f5849e471964096e1454ba431fdddc06509a5a4db34f95afc9c9c65b6 WHIRLPOOL 44ef3807ae1ac876f4203c5010b1823a764cdb92b3e96d36ce68c83b3c6378a5dfac45f374a141bebe59c5127a6ffe17b799a37990bae5f4f0ffddd844f8f33c
+EBUILD bison-3.0.4-r1.ebuild 2141 SHA256 fc67bf4486a790b0a11ca1673550c640a2c668eab2cea126c3be83b0faffec2d SHA512 c647e4bf58c04f014734812308ceaae9882ea435f757988951c93c3e10a874cf92dc06bb1c9a6a3a4b3bc613dd02fc36d4cc7dba45b80a3fa85dc0c60d17cd93 WHIRLPOOL c67fcdba28876a99a79c63cc23ddc48127d2da3e3df11bbccd1d163bbf89a81cde536d134b1d213faef3e65375d1d5381ec3719a350945d8d4a9ad2e8aad16b6
+MISC ChangeLog 7389 SHA256 78612d9f0bce63cbcd090179ea5608bacc2bc8bd041dc0486613cd9421725fc8 SHA512 2350932496a8ff0865dd37186fbfdf2200f96e1bf92905af9b95cdb60c62ffb8a5c29bfab2c039cfb442255e0056826f6b8a84f0ff0ced75c0870e5331020e89 WHIRLPOOL e8963ba97de2be11aae62a3fad736598e8ee1593231c07ded7dfa4797ea2b0858a134dd639f94e88a18f272cebe0e497814bced2e21cac2d04837856d83b73a8
+MISC ChangeLog-2015 18504 SHA256 4b44263ef1e0376eb0eeac6c870eeea6edc802ceaf8a7fdaca666243421826f2 SHA512 30f97a294909375d34890968330bf433eea7a160468c2b4281925d4d3697b5acb5616fd7398cc4b14652f68c3c1889ba2fb2605dbd931112ad1dc0aaf37c25d6 WHIRLPOOL c45485beb8745ba15fd261d9c25e548c9a2c1fe129e4e1614c59291d1b859a30221dadc1efb042220a47eb662ed75a3f9bd208e4fe8628178eceec595536c433
+MISC metadata.xml 253 SHA256 d82c33ef453113a5c1ebe250dcba373c22934a69b0a86c6ab15a5ca589c25b91 SHA512 54a9069aeb4165d2dff3d473c8001bc51613aac9dff3f7f5e9971a9891a737a31511ffa11cbd523febe581ac1d9de2bdf2f40410f0c4239138f2ccca3ef15555 WHIRLPOOL e5aee23acff864609953a1e4de768f0e4aef704b44c53c021f28573e1ca5c99f1a46d92935ecec2449f7b4419a36d8373127d0ecfa8d7bae72d835e1839eb3f8
diff --git a/sys-devel/bison/bison-1.875d.ebuild b/sys-devel/bison/bison-1.875d.ebuild
new file mode 100644
index 000000000000..522e7d85706a
--- /dev/null
+++ b/sys-devel/bison/bison-1.875d.ebuild
@@ -0,0 +1,64 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit toolchain-funcs flag-o-matic eutils
+
+DESCRIPTION="A yacc-compatible parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/bison.html"
+SRC_URI="ftp://alpha.gnu.org/pub/gnu/bison/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86"
+IUSE="nls static"
+
+DEPEND="sys-devel/m4
+ nls? ( sys-devel/gettext )"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${PN}-1.32-extfix.patch
+}
+
+src_compile() {
+ # Bug 39842 says that bison segfaults when built on amd64 with
+ # optimizations. This will probably be fixed in a future gcc
+ # version, but for the moment just disable optimizations for that
+ # arch (04 Feb 2004 agriffis)
+ [ "$ARCH" == "amd64" ] && append-flags -O0
+
+ # Bug 29017 says that bison has compile-time issues with
+ # -march=k6* prior to 3.4CVS. Use -march=i586 instead
+ # (04 Feb 2004 agriffis)
+ #
+ if (( $(gcc-major-version) == 3 && $(gcc-minor-version) < 4 )) ; then
+ replace-cpu-flags k6 k6-1 k6-2 i586
+ fi
+
+ econf $(use_enable nls) || die
+ use static && append-ldflags -static
+ emake || die
+}
+
+src_install() {
+ make DESTDIR="${D}" \
+ datadir=/usr/share \
+ mandir=/usr/share/man \
+ infodir=/usr/share/info \
+ install || die
+
+ # This one is installed by dev-util/yacc
+ mv "${D}"/usr/bin/yacc "${D}"/usr/bin/yacc.bison || die
+
+ # We do not need this.
+ rm -f "${D}"/usr/lib/liby.a
+
+ dodoc AUTHORS NEWS ChangeLog README REFERENCES OChangeLog doc/FAQ
+}
+
+pkg_postinst() {
+ if [[ ! -e ${ROOT}/usr/bin/yacc ]] ; then
+ ln -s yacc.bison "${ROOT}"/usr/bin/yacc
+ fi
+}
diff --git a/sys-devel/bison/bison-2.4.3.ebuild b/sys-devel/bison/bison-2.4.3.ebuild
new file mode 100644
index 000000000000..fde4389df171
--- /dev/null
+++ b/sys-devel/bison/bison-2.4.3.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="2"
+
+inherit flag-o-matic eutils
+
+DESCRIPTION="A yacc-compatible parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/bison.html"
+SRC_URI="mirror://gnu/bison/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~sparc-fbsd ~x86-fbsd"
+IUSE="nls static"
+
+RDEPEND="sys-devel/m4"
+DEPEND="${RDEPEND}
+ nls? ( sys-devel/gettext )"
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-uclibc-sched_param-def.patch
+ epatch "${FILESDIR}"/${P}-no-gets.patch
+}
+
+src_configure() {
+ use static && append-ldflags -static
+ econf $(use_enable nls)
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die
+
+ # This one is installed by dev-util/yacc
+ mv "${D}"/usr/bin/yacc{,.bison} || die
+ mv "${D}"/usr/share/man/man1/yacc{,.bison}.1 || die
+
+ # We do not need this.
+ rm -r "${D}"/usr/lib* || die
+
+ dodoc AUTHORS NEWS ChangeLog README OChangeLog THANKS TODO
+}
+
+pkg_postinst() {
+ if [[ ! -e ${ROOT}/usr/bin/yacc ]] ; then
+ ln -s yacc.bison "${ROOT}"/usr/bin/yacc
+ fi
+}
diff --git a/sys-devel/bison/bison-2.7.1.ebuild b/sys-devel/bison/bison-2.7.1.ebuild
new file mode 100644
index 000000000000..ab38be965319
--- /dev/null
+++ b/sys-devel/bison/bison-2.7.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=4
+
+inherit flag-o-matic
+
+DESCRIPTION="A general-purpose (yacc-compatible) parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+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 ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="nls static test"
+
+RDEPEND=">=sys-devel/m4-1.4.16"
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ nls? ( sys-devel/gettext )
+ test? ( dev-lang/perl )"
+
+DOCS="AUTHORS ChangeLog-2012 NEWS README THANKS TODO" # ChangeLog-1998 PACKAGING README-alpha README-release
+
+src_configure() {
+ use static && append-ldflags -static
+
+ # We don't need perl unless we run tests.
+ use test || export ac_cv_path_PERL=true
+ econf \
+ $(use_enable nls)
+}
+
+src_install() {
+ default
+
+ # This one is installed by dev-util/yacc
+ mv "${ED}"/usr/bin/yacc{,.bison} || die
+ mv "${ED}"/usr/share/man/man1/yacc{,.bison}.1 || die
+
+ # We do not need liby.a
+ rm -r "${ED}"/usr/lib* || die
+
+ # Move to documentation directory and leave compressing for EAPI>=4
+ mv "${ED}"/usr/share/${PN}/README "${ED}"/usr/share/doc/${PF}/README.data
+}
+
+pkg_postinst() {
+ local f="${EROOT}/usr/bin/yacc"
+ if [[ ! -e ${f} ]] ; then
+ ln -s yacc.bison "${f}"
+ fi
+}
+
+pkg_postrm() {
+ # clean up the dead symlink when we get unmerged #377469
+ local f="${EROOT}/usr/bin/yacc"
+ if [[ -L ${f} && ! -e ${f} ]] ; then
+ rm -f "${f}"
+ fi
+}
diff --git a/sys-devel/bison/bison-3.0.4-r1.ebuild b/sys-devel/bison/bison-3.0.4-r1.ebuild
new file mode 100644
index 000000000000..c20e7436f012
--- /dev/null
+++ b/sys-devel/bison/bison-3.0.4-r1.ebuild
@@ -0,0 +1,73 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=5
+
+inherit flag-o-matic eutils
+
+DESCRIPTION="A general-purpose (yacc-compatible) parser generator"
+HOMEPAGE="https://www.gnu.org/software/bison/"
+SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~ppc-aix ~x64-cygwin ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~m68k-mint ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+IUSE="examples nls static test"
+
+RDEPEND=">=sys-devel/m4-1.4.16"
+DEPEND="${RDEPEND}
+ sys-devel/flex
+ examples? ( dev-lang/perl )
+ nls? ( sys-devel/gettext )
+ test? ( dev-lang/perl )"
+
+DOCS=( AUTHORS ChangeLog-2012 NEWS README THANKS TODO ) # ChangeLog-1998 PACKAGING README-alpha README-release
+
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-optional-perl.patch #538300
+ # The makefiles make the man page depend on the configure script
+ # which we patched above. Touch it to prevent regeneration.
+ touch doc/bison.1 #548778 #538300#9
+ # Avoid regenerating the info page when the timezone is diff. #574492
+ sed -i '2iexport TZ=UTC' build-aux/mdate-sh || die
+}
+
+src_configure() {
+ use static && append-ldflags -static
+
+ # We don't need perl unless we run tests.
+ use test || export ac_cv_path_PERL=true
+ econf \
+ --docdir='$(datarootdir)'/doc/${PF} \
+ $(use_enable examples) \
+ $(use_enable nls)
+}
+
+src_install() {
+ default
+
+ # This one is installed by dev-util/yacc
+ mv "${ED}"/usr/bin/yacc{,.bison} || die
+ mv "${ED}"/usr/share/man/man1/yacc{,.bison}.1 || die
+
+ # We do not need liby.a
+ rm -r "${ED}"/usr/lib* || die
+
+ # Move to documentation directory and leave compressing for EAPI>=4
+ mv "${ED}"/usr/share/${PN}/README "${ED}"/usr/share/doc/${PF}/README.data
+}
+
+pkg_postinst() {
+ local f="${EROOT}/usr/bin/yacc"
+ if [[ ! -e ${f} ]] ; then
+ ln -s yacc.bison "${f}"
+ fi
+}
+
+pkg_postrm() {
+ # clean up the dead symlink when we get unmerged #377469
+ local f="${EROOT}/usr/bin/yacc"
+ if [[ -L ${f} && ! -e ${f} ]] ; then
+ rm -f "${f}"
+ fi
+}
diff --git a/sys-devel/bison/files/bison-1.32-extfix.patch b/sys-devel/bison/files/bison-1.32-extfix.patch
new file mode 100644
index 000000000000..363d038d8a52
--- /dev/null
+++ b/sys-devel/bison/files/bison-1.32-extfix.patch
@@ -0,0 +1,28 @@
+2002-02-15 Gwenole Beauchesne <gbeauchesne@mandrakesoft.com>
+
+ * src/files (compute_exts_from_gf, compute_exts_from_src): Handle
+ the case where header_extension is the same as src_extension, aka
+ handle -d -o <file> where <file> doesn't have a known EXT to
+ transform. e.g. if <file> is <something>.yxx, set the
+ header_extension to <something>.yxx.h, as would do bison 1.28.
+
+--- bison-1.32/src/files.c.extfix Mon Jan 21 16:41:46 2002
++++ bison-1.32/src/files.c Fri Feb 15 15:40:43 2002
+@@ -288,6 +288,8 @@ compute_exts_from_gf (const char *ext)
+ src_extension = tr (src_extension, 'Y', 'C');
+ header_extension = tr (ext, 'y', 'h');
+ header_extension = tr (header_extension, 'Y', 'H');
++ if (!strcmp (header_extension, src_extension))
++ header_extension = concat2 (src_extension, ".h");
+ }
+
+ /* Computes extensions from the given c source file extension. */
+@@ -300,6 +302,8 @@ compute_exts_from_src (const char *ext)
+ src_extension = xstrdup (ext);
+ header_extension = tr (ext, 'c', 'h');
+ header_extension = tr (header_extension, 'C', 'H');
++ if (!strcmp (header_extension, src_extension))
++ header_extension = concat2 (src_extension, ".h");
+ }
+
+
diff --git a/sys-devel/bison/files/bison-2.4.3-no-gets.patch b/sys-devel/bison/files/bison-2.4.3-no-gets.patch
new file mode 100644
index 000000000000..a49a816f4761
--- /dev/null
+++ b/sys-devel/bison/files/bison-2.4.3-no-gets.patch
@@ -0,0 +1,22 @@
+hack until bizon pulls a newer gnulib version
+
+From 66712c23388e93e5c518ebc8515140fa0c807348 Mon Sep 17 00:00:00 2001
+From: Eric Blake <eblake@redhat.com>
+Date: Thu, 29 Mar 2012 13:30:41 -0600
+Subject: [PATCH] stdio: don't assume gets any more
+
+Gnulib intentionally does not have a gets module, and now that C11
+and glibc have dropped it, we should be more proactive about warning
+any user on a platform that still has a declaration of this dangerous
+interface.
+
+--- a/lib/stdio.in.h
++++ b/lib/stdio.in.h
+@@ -125,7 +125,6 @@
+ so any use of gets warrants an unconditional warning. Assume it is
+ always declared, since it is required by C89. */
+ #undef gets
+-_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
+
+ #if @GNULIB_FOPEN@
+ # if @REPLACE_FOPEN@
diff --git a/sys-devel/bison/files/bison-2.4.3-uclibc-sched_param-def.patch b/sys-devel/bison/files/bison-2.4.3-uclibc-sched_param-def.patch
new file mode 100644
index 000000000000..50652d8babc2
--- /dev/null
+++ b/sys-devel/bison/files/bison-2.4.3-uclibc-sched_param-def.patch
@@ -0,0 +1,19 @@
+uclibc defines __GLIBC__ but it does not expose struct shed_param as much as glibc
+and is not needed too per standard. gnulib attempts to use it but we have to account
+for it because in this case uclibc does not behave like glibc.
+
+-Khem
+
+http://bugs.gentoo.org/336484
+
+--- m4-1.4.14/lib/spawn.in.h
++++ m4-1.4.14/lib/spawn.in.h
+@@ -31,7 +31,7 @@
+
+ /* Get definitions of 'struct sched_param' and 'sigset_t'.
+ But avoid namespace pollution on glibc systems. */
+-#ifndef __GLIBC__
++#if !defined __GLIBC__ || defined __UCLIBC__
+ # include <sched.h>
+ # include <signal.h>
+ #endif
diff --git a/sys-devel/bison/files/bison-3.0.4-optional-perl.patch b/sys-devel/bison/files/bison-3.0.4-optional-perl.patch
new file mode 100644
index 000000000000..ba0bf7b2d5b3
--- /dev/null
+++ b/sys-devel/bison/files/bison-3.0.4-optional-perl.patch
@@ -0,0 +1,500 @@
+https://bugs.gentoo.org/538300
+
+From 3da25ddd011c169b9857ed2f6a2e82988f059ba5 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Fri, 3 Apr 2015 02:39:21 -0400
+Subject: [PATCH] make perl & examples optional
+
+The normal bison program does not require perl to build or run, so lets
+soften that requirement in the configure script. We now warn if its not
+found, and we make the examples logic depend on that.
+
+* configure.ac: Change AC_MSG_ERROR to AC_MSG_WARN for perl.
+Add an --enable-examples flag.
+* Makefile.am: Only include examples/local.mk when ENABLE_EXAMPLES.
+---
+ Makefile.am | 2 ++
+ configure.ac | 21 ++++++++++++++++++++-
+ 2 files changed, 22 insertions(+), 1 deletion(-)
+
+diff --git a/Makefile.am b/Makefile.am
+index b6135cb..50ea0a0 100644
+#--- a/Makefile.am
+#+++ b/Makefile.am
+@@ -59,7 +59,9 @@ include data/local.mk
+ include djgpp/local.mk
+ include doc/local.mk
+ include etc/local.mk
++if ENABLE_EXAMPLES
+ include examples/local.mk
++endif
+ include lib/local.mk
+ include src/local.mk
+ include tests/local.mk
+diff --git a/configure.ac b/configure.ac
+index 6f20040..e67249b 100644
+#--- a/configure.ac
+#+++ b/configure.ac
+@@ -179,12 +179,31 @@ AC_DEFINE_UNQUOTED([M4_GNU_OPTION], ["$M4_GNU"], [Define to "-g" if GNU M4
+ supports -g, otherwise to "".])
+ AC_PATH_PROG([PERL], [perl])
+ if test -z "$PERL"; then
+- AC_MSG_ERROR([perl not found])
++ AC_MSG_WARN([perl required for the testsuites])
+ fi
+ AM_MISSING_PROG([HELP2MAN], [help2man])
+ AC_PATH_PROG([XSLTPROC], [xsltproc])
+ AC_SUBST([XSLTPROC])
+
++AC_ARG_ENABLE([examples],
++ [AC_HELP_STRING([--disable-examples],
++ [do not build and install examples])])
++# Enable the examles by default if perl is available.
++case $enable_examples in
++no) ;;
++yes)
++ if test -z "$PERL"; then
++ AC_MSG_ERROR([perl required for the examples])
++ fi
++ ;;
++*)
++ if test -n "$PERL"; then
++ enable_examples=yes
++ fi
++ ;;
++esac
++AM_CONDITIONAL([ENABLE_EXAMPLES], [test "xenable_examples" = xyes])
++
+ # Checks for header files.
+ AC_CHECK_HEADERS_ONCE([locale.h])
+
+--- a/Makefile.in
++++ b/Makefile.in
+@@ -248,13 +248,29 @@
+ POST_UNINSTALL = :
+ build_triplet = @build@
+ host_triplet = @host@
+-check_PROGRAMS = $(am__EXEEXT_1) examples/mfcalc/mfcalc$(EXEEXT) \
+- examples/rpcalc/rpcalc$(EXEEXT)
++check_PROGRAMS = $(am__EXEEXT_1) $(am__EXEEXT_2)
+ @CROSS_COMPILING_FALSE@am__append_1 = $(top_srcdir)/doc/bison.help
+-@FLEX_CXX_WORKS_TRUE@am__append_2 = examples/calc++/calc++
+-@FLEX_CXX_WORKS_TRUE@am__append_3 = examples/calc++/calc++.test
+-@FLEX_CXX_WORKS_FALSE@am__append_4 = examples/calc++/calc++.test
+-@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_5 = lib/uniwidth/width.c
++@ENABLE_EXAMPLES_TRUE@am__append_2 = $(extracted) \
++@ENABLE_EXAMPLES_TRUE@ examples/extracted.stamp \
++@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_generated) \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.output \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.stamp \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-scanner.cc \
++@ENABLE_EXAMPLES_TRUE@ examples/mfcalc/mfcalc.[ch] \
++@ENABLE_EXAMPLES_TRUE@ examples/mfcalc/mfcalc.output \
++@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc.[ch] \
++@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc.output
++@ENABLE_EXAMPLES_TRUE@am__append_3 = .yy .stamp
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@am__append_4 = examples/calc++/calc++
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@am__append_5 = examples/calc++/calc++.test
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_FALSE@am__append_6 = examples/calc++/calc++.test
++@ENABLE_EXAMPLES_TRUE@am__append_7 = $(mfcalc_sources) \
++@ENABLE_EXAMPLES_TRUE@ $(rpcalc_sources)
++@ENABLE_EXAMPLES_TRUE@am__append_8 = examples/mfcalc/mfcalc \
++@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc
++@ENABLE_EXAMPLES_TRUE@am__append_9 = examples/mfcalc/mfcalc.test \
++@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc.test
++@LIBUNISTRING_COMPILE_UNIWIDTH_WIDTH_TRUE@am__append_10 = lib/uniwidth/width.c
+ bin_PROGRAMS = src/bison$(EXEEXT)
+ subdir = .
+ ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+@@ -356,7 +372,7 @@
+ am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+ DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \
+- $(am__configure_deps) $(dist_noinst_SCRIPTS) \
++ $(am__configure_deps) $(am__dist_noinst_SCRIPTS_DIST) \
+ $(srcdir)/doc/version.texi $(srcdir)/doc/stamp-vti \
+ $(dist_doc_DATA) $(dist_m4sugar_DATA) $(dist_pkgdata_DATA) \
+ $(dist_xslt_DATA) $(am__DIST_COMMON)
+@@ -473,15 +489,18 @@
+ @ENABLE_YACC_TRUE@am_lib_liby_a_OBJECTS = lib/main.$(OBJEXT) \
+ @ENABLE_YACC_TRUE@ lib/yyerror.$(OBJEXT)
+ lib_liby_a_OBJECTS = $(am_lib_liby_a_OBJECTS)
+-@FLEX_CXX_WORKS_TRUE@am__EXEEXT_1 = examples/calc++/calc++$(EXEEXT)
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@am__EXEEXT_1 = examples/calc++/calc++$(EXEEXT)
++@ENABLE_EXAMPLES_TRUE@am__EXEEXT_2 = examples/mfcalc/mfcalc$(EXEEXT) \
++@ENABLE_EXAMPLES_TRUE@ examples/rpcalc/rpcalc$(EXEEXT)
+ PROGRAMS = $(bin_PROGRAMS)
+-am__objects_2 = examples/calc++/examples_calc___calc__-calc++-driver.$(OBJEXT) \
+- examples/calc++/examples_calc___calc__-calc++-scanner.$(OBJEXT) \
+- examples/calc++/examples_calc___calc__-calc++.$(OBJEXT)
+-am__objects_3 = examples/calc++/examples_calc___calc__-calc++-parser.$(OBJEXT)
+-am__objects_4 = $(am__objects_2) $(am__objects_3)
+-@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___OBJECTS = \
+-@FLEX_CXX_WORKS_TRUE@ $(am__objects_4)
++@ENABLE_EXAMPLES_TRUE@am__objects_2 = examples/calc++/examples_calc___calc__-calc++-driver.$(OBJEXT) \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/examples_calc___calc__-calc++-scanner.$(OBJEXT) \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/examples_calc___calc__-calc++.$(OBJEXT)
++@ENABLE_EXAMPLES_TRUE@am__objects_3 = examples/calc++/examples_calc___calc__-calc++-parser.$(OBJEXT)
++@ENABLE_EXAMPLES_TRUE@am__objects_4 = $(am__objects_2) \
++@ENABLE_EXAMPLES_TRUE@ $(am__objects_3)
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___OBJECTS = \
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@ $(am__objects_4)
+ examples_calc___calc___OBJECTS = \
+ $(nodist_examples_calc___calc___OBJECTS)
+ examples_calc___calc___LDADD = $(LDADD)
+@@ -490,17 +509,17 @@
+ examples_calc___calc___LINK = $(CXXLD) \
+ $(examples_calc___calc___CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
+-am__objects_5 = \
+- examples/mfcalc/examples_mfcalc_mfcalc-mfcalc.$(OBJEXT)
+-am__objects_6 = $(am__objects_5)
+-nodist_examples_mfcalc_mfcalc_OBJECTS = $(am__objects_6)
++@ENABLE_EXAMPLES_TRUE@am__objects_5 = examples/mfcalc/examples_mfcalc_mfcalc-mfcalc.$(OBJEXT)
++@ENABLE_EXAMPLES_TRUE@am__objects_6 = $(am__objects_5)
++@ENABLE_EXAMPLES_TRUE@nodist_examples_mfcalc_mfcalc_OBJECTS = \
++@ENABLE_EXAMPLES_TRUE@ $(am__objects_6)
+ examples_mfcalc_mfcalc_OBJECTS = \
+ $(nodist_examples_mfcalc_mfcalc_OBJECTS)
+ examples_mfcalc_mfcalc_DEPENDENCIES =
+-am__objects_7 = \
+- examples/rpcalc/examples_rpcalc_rpcalc-rpcalc.$(OBJEXT)
+-am__objects_8 = $(am__objects_7)
+-nodist_examples_rpcalc_rpcalc_OBJECTS = $(am__objects_8)
++@ENABLE_EXAMPLES_TRUE@am__objects_7 = examples/rpcalc/examples_rpcalc_rpcalc-rpcalc.$(OBJEXT)
++@ENABLE_EXAMPLES_TRUE@am__objects_8 = $(am__objects_7)
++@ENABLE_EXAMPLES_TRUE@nodist_examples_rpcalc_rpcalc_OBJECTS = \
++@ENABLE_EXAMPLES_TRUE@ $(am__objects_8)
+ examples_rpcalc_rpcalc_OBJECTS = \
+ $(nodist_examples_rpcalc_rpcalc_OBJECTS)
+ examples_rpcalc_rpcalc_DEPENDENCIES =
+@@ -528,6 +547,7 @@
+ src_bison_DEPENDENCIES = lib/libbison.a $(am__DEPENDENCIES_1)
+ src_bison_LINK = $(CCLD) $(src_bison_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \
+ $(LDFLAGS) -o $@
++am__dist_noinst_SCRIPTS_DIST = examples/extexi examples/test
+ SCRIPTS = $(bin_SCRIPTS) $(dist_noinst_SCRIPTS) \
+ $(nodist_noinst_SCRIPTS)
+ AM_V_P = $(am__v_P_@AM_V@)
+@@ -2145,7 +2165,7 @@
+ djgpp/subpipe.h djgpp/testsuite.sed doc/refcard.tex \
+ $(top_srcdir)/doc/bison.help $(dist_man_MANS:.1=.x) $(FIGS_GV) \
+ $(FIGS_GV:.gv=.txt) $(FIGS_GV:.gv=.eps) $(FIGS_GV:.gv=.pdf) \
+- $(FIGS_GV:.gv=.png) doc/Doxyfile.in $(am__append_4) \
++ $(FIGS_GV:.gv=.png) doc/Doxyfile.in $(am__append_6) \
+ lib/alignof.h lib/alloca.in.h \
+ $(top_srcdir)/build-aux/announce-gen lib/argmatch.h \
+ lib/c-strcaseeq.h lib/calloc.c lib/cloexec.h lib/close.c \
+@@ -2249,27 +2269,20 @@
+ # a developer might naively reference .version in a test case while the bison
+ # executable still compiles with VERSION, and so the test case might fail or
+ # pass incorrectly.
+-BUILT_SOURCES = $(mfcalc_sources) $(rpcalc_sources) $(ALLOCA_H) \
+- lib/configmake.h $(ERRNO_H) lib/fcntl.h $(FLOAT_H) $(GETOPT_H) \
+- lib/inttypes.h lib/math.h $(SCHED_H) lib/signal.h \
+- lib/arg-nonnull.h lib/c++defs.h lib/warn-on-use.h lib/spawn.h \
+- $(STDBOOL_H) $(STDDEF_H) $(STDINT_H) lib/stdio.h lib/stdlib.h \
+- lib/string.h lib/sys/stat.h lib/sys/time.h lib/sys/types.h \
+- lib/sys/wait.h lib/time.h lib/unistd.h \
+- $(LIBUNISTRING_UNITYPES_H) $(LIBUNISTRING_UNIWIDTH_H) \
+- lib/wchar.h lib/wctype.h src/parse-gram.c src/parse-gram.h \
+- src/scan-code.c src/scan-gram.c src/scan-skel.c \
+- $(top_srcdir)/.version
++BUILT_SOURCES = $(am__append_7) $(ALLOCA_H) lib/configmake.h \
++ $(ERRNO_H) lib/fcntl.h $(FLOAT_H) $(GETOPT_H) lib/inttypes.h \
++ lib/math.h $(SCHED_H) lib/signal.h lib/arg-nonnull.h \
++ lib/c++defs.h lib/warn-on-use.h lib/spawn.h $(STDBOOL_H) \
++ $(STDDEF_H) $(STDINT_H) lib/stdio.h lib/stdlib.h lib/string.h \
++ lib/sys/stat.h lib/sys/time.h lib/sys/types.h lib/sys/wait.h \
++ lib/time.h lib/unistd.h $(LIBUNISTRING_UNITYPES_H) \
++ $(LIBUNISTRING_UNIWIDTH_H) lib/wchar.h lib/wctype.h \
++ src/parse-gram.c src/parse-gram.h src/scan-code.c \
++ src/scan-gram.c src/scan-skel.c $(top_srcdir)/.version
+ CLEANFILES = doc/refcard.pdf $(FIGS_GV:.gv=.eps) $(FIGS_GV:.gv=.pdf) \
+- $(FIGS_GV:.gv=.png) doc/Doxyfile $(extracted) \
+- examples/extracted.stamp $(calcxx_sources_generated) \
+- examples/calc++/calc++-parser.output \
+- examples/calc++/calc++-parser.stamp \
+- examples/calc++/calc++-scanner.cc examples/mfcalc/mfcalc.[ch] \
+- examples/mfcalc/mfcalc.output examples/rpcalc/rpcalc.[ch] \
+- examples/rpcalc/rpcalc.output lib/configmake.h \
+- lib/configmake.h-t lib/charset.alias lib/ref-add.sed \
+- lib/ref-del.sed
++ $(FIGS_GV:.gv=.png) doc/Doxyfile $(am__append_2) \
++ lib/configmake.h lib/configmake.h-t lib/charset.alias \
++ lib/ref-add.sed lib/ref-del.sed
+ DISTCLEANFILES = tests/atconfig $(check_SCRIPTS)
+ MOSTLYCLEANDIRS = lib/sys lib/sys
+ MOSTLYCLEANFILES = $(top_srcdir)/doc/*.t lib/core lib/*.stackdump \
+@@ -2289,10 +2302,9 @@
+ lib/unistd.h-t lib/unitypes.h lib/unitypes.h-t lib/uniwidth.h \
+ lib/uniwidth.h-t lib/wchar.h lib/wchar.h-t lib/wctype.h \
+ lib/wctype.h-t src/yacc
+-SUFFIXES = .gv .eps .pdf .png .yy .stamp
++SUFFIXES = .gv .eps .pdf .png $(am__append_3)
+ TESTS = $(dist_TESTS)
+-dist_TESTS = $(am__append_3) examples/mfcalc/mfcalc.test \
+- examples/rpcalc/rpcalc.test
++dist_TESTS = $(am__append_5) $(am__append_9)
+ noinst_LIBRARIES = lib/libbison.a
+ dist_pkgdata_DATA = \
+ data/README \
+@@ -2364,59 +2376,59 @@
+ -e 's,@top_srcdir\@,$(top_srcdir),g'
+
+ nodist_noinst_SCRIPTS = etc/bench.pl
+-dist_noinst_SCRIPTS = examples/extexi examples/test
+-TEST_LOG_COMPILER = $(top_srcdir)/examples/test
+-AM_CXXFLAGS = \
+- $(WARN_CXXFLAGS) $(WARN_CXXFLAGS_TEST) $(WERROR_CXXFLAGS)
+-
+-doc = $(top_srcdir)/doc/bison.texi
+-extexi = $(top_srcdir)/examples/extexi
+-@ENABLE_GCC_WARNINGS_TRUE@extexiFLAGS = --synclines
+-extract = VERSION="$(VERSION)" $(PERL) $(extexi) $(extexiFLAGS) $(doc) --
+-extracted = $(calcxx_extracted) $(mfcalc_extracted) \
+- $(rpcalc_extracted)
+-calcxx_sources_extracted = \
+- examples/calc++/calc++-driver.cc \
+- examples/calc++/calc++-driver.hh \
+- examples/calc++/calc++-scanner.ll \
+- examples/calc++/calc++.cc
+-
+-calcxx_extracted = \
+- $(calcxx_sources_extracted) \
+- examples/calc++/calc++-parser.yy
+-
+-calcxx_sources_generated = \
+- examples/calc++/calc++-parser.cc \
+- examples/calc++/calc++-parser.hh \
+- examples/calc++/location.hh \
+- examples/calc++/position.hh \
+- examples/calc++/stack.hh
+-
+-calcxx_sources = \
+- $(calcxx_sources_extracted) \
+- $(calcxx_sources_generated)
+-
+-@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___SOURCES = \
+-@FLEX_CXX_WORKS_TRUE@ $(calcxx_sources)
+-
+-@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CPPFLAGS = -I$(top_builddir)/examples/calc++
+-@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CXXFLAGS = $(AM_CXXFLAGS) $(FLEX_SCANNER_CXXFLAGS)
+-calcxxdir = $(docdir)/examples/calc++
+-calcxx_DATA = $(calcxx_extracted)
+-mfcalc_extracted = examples/mfcalc/calc.h examples/mfcalc/mfcalc.y
+-mfcalc_sources = $(mfcalc_extracted)
+-examples_mfcalc_mfcalc_LDADD = -lm
+-nodist_examples_mfcalc_mfcalc_SOURCES = $(mfcalc_sources)
+-examples_mfcalc_mfcalc_CPPFLAGS = -I$(top_builddir)/examples/mfcalc
+-mfcalcdir = $(docdir)/examples/mfcalc
+-mfcalc_DATA = $(mfcalc_extracted)
+-rpcalc_extracted = examples/rpcalc/rpcalc.y
+-rpcalc_sources = $(rpcalc_extracted)
+-examples_rpcalc_rpcalc_LDADD = -lm
+-nodist_examples_rpcalc_rpcalc_SOURCES = $(rpcalc_sources)
+-examples_rpcalc_rpcalc_CPPFLAGS = -I$(top_builddir)/examples/rpcalc
+-rpcalcdir = $(docdir)/examples/rpcalc
+-rpcalc_DATA = $(rpcalc_extracted)
++@ENABLE_EXAMPLES_TRUE@dist_noinst_SCRIPTS = examples/extexi examples/test
++@ENABLE_EXAMPLES_TRUE@TEST_LOG_COMPILER = $(top_srcdir)/examples/test
++@ENABLE_EXAMPLES_TRUE@AM_CXXFLAGS = \
++@ENABLE_EXAMPLES_TRUE@ $(WARN_CXXFLAGS) $(WARN_CXXFLAGS_TEST) $(WERROR_CXXFLAGS)
++
++@ENABLE_EXAMPLES_TRUE@doc = $(top_srcdir)/doc/bison.texi
++@ENABLE_EXAMPLES_TRUE@extexi = $(top_srcdir)/examples/extexi
++@ENABLE_EXAMPLES_TRUE@@ENABLE_GCC_WARNINGS_TRUE@extexiFLAGS = --synclines
++@ENABLE_EXAMPLES_TRUE@extract = VERSION="$(VERSION)" $(PERL) $(extexi) $(extexiFLAGS) $(doc) --
++@ENABLE_EXAMPLES_TRUE@extracted = $(calcxx_extracted) \
++@ENABLE_EXAMPLES_TRUE@ $(mfcalc_extracted) $(rpcalc_extracted)
++@ENABLE_EXAMPLES_TRUE@calcxx_sources_extracted = \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-driver.cc \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-driver.hh \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-scanner.ll \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++.cc
++
++@ENABLE_EXAMPLES_TRUE@calcxx_extracted = \
++@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_extracted) \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.yy
++
++@ENABLE_EXAMPLES_TRUE@calcxx_sources_generated = \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.cc \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/calc++-parser.hh \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/location.hh \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/position.hh \
++@ENABLE_EXAMPLES_TRUE@ examples/calc++/stack.hh
++
++@ENABLE_EXAMPLES_TRUE@calcxx_sources = \
++@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_extracted) \
++@ENABLE_EXAMPLES_TRUE@ $(calcxx_sources_generated)
++
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@nodist_examples_calc___calc___SOURCES = \
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@ $(calcxx_sources)
++
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CPPFLAGS = -I$(top_builddir)/examples/calc++
++@ENABLE_EXAMPLES_TRUE@@FLEX_CXX_WORKS_TRUE@examples_calc___calc___CXXFLAGS = $(AM_CXXFLAGS) $(FLEX_SCANNER_CXXFLAGS)
++@ENABLE_EXAMPLES_TRUE@calcxxdir = $(docdir)/examples/calc++
++@ENABLE_EXAMPLES_TRUE@calcxx_DATA = $(calcxx_extracted)
++@ENABLE_EXAMPLES_TRUE@mfcalc_extracted = examples/mfcalc/calc.h examples/mfcalc/mfcalc.y
++@ENABLE_EXAMPLES_TRUE@mfcalc_sources = $(mfcalc_extracted)
++@ENABLE_EXAMPLES_TRUE@examples_mfcalc_mfcalc_LDADD = -lm
++@ENABLE_EXAMPLES_TRUE@nodist_examples_mfcalc_mfcalc_SOURCES = $(mfcalc_sources)
++@ENABLE_EXAMPLES_TRUE@examples_mfcalc_mfcalc_CPPFLAGS = -I$(top_builddir)/examples/mfcalc
++@ENABLE_EXAMPLES_TRUE@mfcalcdir = $(docdir)/examples/mfcalc
++@ENABLE_EXAMPLES_TRUE@mfcalc_DATA = $(mfcalc_extracted)
++@ENABLE_EXAMPLES_TRUE@rpcalc_extracted = examples/rpcalc/rpcalc.y
++@ENABLE_EXAMPLES_TRUE@rpcalc_sources = $(rpcalc_extracted)
++@ENABLE_EXAMPLES_TRUE@examples_rpcalc_rpcalc_LDADD = -lm
++@ENABLE_EXAMPLES_TRUE@nodist_examples_rpcalc_rpcalc_SOURCES = $(rpcalc_sources)
++@ENABLE_EXAMPLES_TRUE@examples_rpcalc_rpcalc_CPPFLAGS = -I$(top_builddir)/examples/rpcalc
++@ENABLE_EXAMPLES_TRUE@rpcalcdir = $(docdir)/examples/rpcalc
++@ENABLE_EXAMPLES_TRUE@rpcalc_DATA = $(rpcalc_extracted)
+
+ # Implementation of bitsets.
+
+@@ -2441,7 +2453,7 @@
+ lib/progname.c lib/quotearg.c lib/sig-handler.c lib/size_max.h \
+ lib/spawn-pipe.h lib/spawn-pipe.c lib/w32spawn.h \
+ lib/glthread/threadlib.c lib/unistd.c lib/dup-safer.c \
+- lib/fd-safer.c lib/pipe-safer.c $(am__append_5) \
++ lib/fd-safer.c lib/pipe-safer.c $(am__append_10) \
+ lib/wait-process.h lib/wait-process.c lib/wctype-h.c \
+ lib/xmalloc.c lib/xalloc-die.c lib/xconcat-filename.c \
+ lib/xsize.h lib/xsize.c lib/xstrndup.h lib/xstrndup.c \
+@@ -5328,31 +5340,31 @@
+ # configure, because the former is way faster than the latter.
+ doc/Doxyfile: $(top_srcdir)/doc/Doxyfile.in
+ $(AM_V_GEN) $(edit) $(top_srcdir)/doc/Doxyfile.in >doc/Doxyfile
+-examples/extracted.stamp: $(doc) $(extexi)
+- $(AM_V_GEN)rm -f $@ $@.tmp
+- $(AM_V_at)touch $@.tmp
+- $(AM_V_at)$(extract) $(extracted)
+- $(AM_V_at)mv $@.tmp $@
+-
+-$(extracted): examples/extracted.stamp
+- @test -f $@ || rm -f examples/extracted.stamp
+- @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/extracted.stamp
++@ENABLE_EXAMPLES_TRUE@examples/extracted.stamp: $(doc) $(extexi)
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_GEN)rm -f $@ $@.tmp
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)touch $@.tmp
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)$(extract) $(extracted)
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)mv $@.tmp $@
++
++@ENABLE_EXAMPLES_TRUE@$(extracted): examples/extracted.stamp
++@ENABLE_EXAMPLES_TRUE@ @test -f $@ || rm -f examples/extracted.stamp
++@ENABLE_EXAMPLES_TRUE@ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/extracted.stamp
+
+ # Don't depend on $(BISON) otherwise we would rebuild these files
+ # in srcdir, including during distcheck, which is forbidden.
+-examples/calc++/calc++-parser.stamp: $(BISON_IN)
+-.yy.stamp:
+- $(AM_V_YACC)rm -f $@
+- $(AM_V_at)touch $@.tmp
+- $(AM_V_at)$(YACCCOMPILE) -o $*.cc $<
+- $(AM_V_at)mv -f $@.tmp $@
+-
+-$(calcxx_sources_generated): examples/calc++/calc++-parser.stamp
+- @test -f $@ || rm -f examples/calc++/calc++-parser.stamp
+- @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/calc++/calc++-parser.stamp
++@ENABLE_EXAMPLES_TRUE@examples/calc++/calc++-parser.stamp: $(BISON_IN)
++@ENABLE_EXAMPLES_TRUE@.yy.stamp:
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_YACC)rm -f $@
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)touch $@.tmp
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)$(YACCCOMPILE) -o $*.cc $<
++@ENABLE_EXAMPLES_TRUE@ $(AM_V_at)mv -f $@.tmp $@
++
++@ENABLE_EXAMPLES_TRUE@$(calcxx_sources_generated): examples/calc++/calc++-parser.stamp
++@ENABLE_EXAMPLES_TRUE@ @test -f $@ || rm -f examples/calc++/calc++-parser.stamp
++@ENABLE_EXAMPLES_TRUE@ @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) examples/calc++/calc++-parser.stamp
+
+ # Avoid using BUILT_SOURCES which is too global.
+-$(examples_calc___calc___OBJECTS): $(calcxx_sources_generated)
++@ENABLE_EXAMPLES_TRUE@$(examples_calc___calc___OBJECTS): $(calcxx_sources_generated)
+
+ # We need the following in order to create <alloca.h> when the system
+ # doesn't have one that works with the given compiler.
+--- a/configure
++++ b/configure
+@@ -1693,6 +1693,8 @@
+ ALLOCA
+ GL_COND_LIBTOOL_FALSE
+ GL_COND_LIBTOOL_TRUE
++ENABLE_EXAMPLES_FALSE
++ENABLE_EXAMPLES_TRUE
+ XSLTPROC
+ HELP2MAN
+ PERL
+@@ -1837,6 +1839,7 @@
+ enable_threads
+ enable_gcc_warnings
+ enable_yacc
++enable_examples
+ enable_assert
+ with_gnu_ld
+ enable_rpath
+@@ -2493,6 +2496,7 @@
+ Also, issue synclines from the examples/ to
+ the corresponding source in the Texinfo doc.
+ --disable-yacc do not build a yacc command or an -ly library
++ --disable-examples do not build and install examples
+ --disable-assert turn off assertions
+ --disable-rpath do not hardcode runtime library paths
+ --disable-nls do not use Native Language Support
+@@ -8935,7 +8939,8 @@
+
+
+ if test -z "$PERL"; then
+- as_fn_error $? "perl not found" "$LINENO" 5
++ { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: perl required for the testsuites" >&5
++$as_echo "$as_me: WARNING: perl required for the testsuites" >&2;}
+ fi
+
+ HELP2MAN=${HELP2MAN-"${am_missing_run}help2man"}
+@@ -8982,6 +8987,34 @@
+
+
+
++# Check whether --enable-examples was given.
++if test "${enable_examples+set}" = set; then :
++ enableval=$enable_examples;
++fi
++
++# Enable the examles by default if perl is available.
++case $enable_examples in
++no) ;;
++yes)
++ if test -z "$PERL"; then
++ as_fn_error $? "perl required for the examples" "$LINENO" 5
++ fi
++ ;;
++*)
++ if test -n "$PERL"; then
++ enable_examples=yes
++ fi
++ ;;
++esac
++ if test "xenable_examples" = xyes; then
++ ENABLE_EXAMPLES_TRUE=
++ ENABLE_EXAMPLES_FALSE='#'
++else
++ ENABLE_EXAMPLES_TRUE='#'
++ ENABLE_EXAMPLES_FALSE=
++fi
++
++
+ # Checks for header files.
+
+
+@@ -38129,6 +38162,10 @@
+ as_fn_error $? "conditional \"FLEX_CXX_WORKS\" was never defined.
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
+ fi
++if test -z "${ENABLE_EXAMPLES_TRUE}" && test -z "${ENABLE_EXAMPLES_FALSE}"; then
++ as_fn_error $? "conditional \"ENABLE_EXAMPLES\" was never defined.
++Usually this means the macro was only invoked conditionally." "$LINENO" 5
++fi
+ if test -z "${GL_COND_LIBTOOL_TRUE}" && test -z "${GL_COND_LIBTOOL_FALSE}"; then
+ as_fn_error $? "conditional \"GL_COND_LIBTOOL\" was never defined.
+ Usually this means the macro was only invoked conditionally." "$LINENO" 5
+--
+2.3.4
diff --git a/sys-devel/bison/metadata.xml b/sys-devel/bison/metadata.xml
new file mode 100644
index 000000000000..56c124413057
--- /dev/null
+++ b/sys-devel/bison/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>base-system@gentoo.org</email>
+ <name>Gentoo Base System</name>
+</maintainer>
+</pkgmetadata>