> /usr/bin/bison -d -v -ppriv_gst_parse_yy /var/tmp/portage/media-libs/gstreamer-1.16.2/work/gstreamer-1.16.2/gst/parse/grammar.y -o grammar.tab.c && \ > mv grammar.tab.c grammar.tab_tmp.c && \ > echo '#ifdef HAVE_CONFIG_H' > grammar.tab_tmp2.c && \ > echo '#include <config.h>' >> grammar.tab_tmp2.c && \ > echo '#endif' >> grammar.tab_tmp2.c && \ > cat grammar.tab_tmp.c >> grammar.tab_tmp2.c && \ > rm grammar.tab_tmp.c && \ > mv grammar.tab_tmp2.c grammar.tab.c > /var/tmp/portage/media-libs/gstreamer-1.16.2/work/gstreamer-1.16.2/gst/parse/grammar.y:799.1-12: warning: deprecated directive: ‘%pure-parser’, use ‘%define api.pure’ [/usr/bin/bison: symbol lookup error: /usr/bin/bison: undefined symbol: styled_ostream_set_hyperlink > make[4]: *** [Makefile:842: grammar.tab.h] Error 127 > make[4]: Leaving directory '/var/tmp/portage/media-libs/gstreamer-1.16.2/work/gstreamer-1.16.2-abi_x86_32.x86/gst/parse' > make[3]: *** [Makefile:1813: all-recursive] Error 1 > make[3]: Leaving directory '/var/tmp/portage/media-libs/gstreamer-1.16.2/work/gstreamer-1.16.2-abi_x86_32.x86/gst' > make[2]: *** [Makefile:1011: all] Error 2 > make[2]: Leaving directory '/var/tmp/portage/media-libs/gstreamer-1.16.2/work/gstreamer-1.16.2-abi_x86_32.x86/gst' > make[1]: *** [Makefile:742: all-recursive] Error 1 > make[1]: Leaving directory '/var/tmp/portage/media-libs/gstreamer-1.16.2/work/gstreamer-1.16.2-abi_x86_32.x86' > make: *** [Makefile:648: all] Error 2 > * ERROR: media-libs/gstreamer-1.16.2::gentoo failed (compile phase): > * # bison -V bison (GNU Bison) 3.7.1
I can only reproduce if I downgrade gettext to 0.20.2, works with 0.21 bison-3.7.1 already has a BDEPEND for >=0.21 gettext, but that didn't stop me from downgrading and reproducing the issue during RDEPEND as it uses the libtextstyle.so library
To be clearer, this isn't a gstreamer bug, but should rather be forwarded to bison to add appropriate RDEPEND.
Right, was caused by a manually downgrade of gettext to test something else for a different bug.
That bison uses a shared library that it doesn't have in RDEPEND (and needs a specific version for) still felt like a bug to me though, and could be a problem with binhosts. Portage would've complained and stopped this otherwise.
The bug has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b83990fef62d8b50fc1cc30aac7cbbdde9cdfa48 commit b83990fef62d8b50fc1cc30aac7cbbdde9cdfa48 Author: Lars Wendler <polynomial-c@gentoo.org> AuthorDate: 2020-09-07 20:51:22 +0000 Commit: Lars Wendler <polynomial-c@gentoo.org> CommitDate: 2020-09-07 20:51:38 +0000 sys-devel/bison: Moved sys-devel/gettext to (R)DEPEND. Bug: https://bugs.gentoo.org/740754 Package-Manager: Portage-3.0.5, Repoman-3.0.1 Signed-off-by: Lars Wendler <polynomial-c@gentoo.org> sys-devel/bison/{bison-3.7.1.ebuild => bison-3.7.1-r1.ebuild} | 10 +++++++--- sys-devel/bison/bison-3.7.2.ebuild | 10 +++++++--- 2 files changed, 14 insertions(+), 6 deletions(-)
Hrmm, libtextstyle seems to be optional for bison: ``` ## Colored diagnostics As an experimental feature, diagnostics are now colored, controlled by the `--color` and `--style` options. To use them, install the libtextstyle library, 0.20.5 or newer, before configuring Bison. It is available from https://alpha.gnu.org/gnu/gettext/, for instance https://alpha.gnu.org/gnu/gettext/libtextstyle-0.20.5.tar.gz, or as part of Gettext 0.21 or newer, for instance https://ftp.gnu.org/gnu/gettext/gettext-0.21.tar.gz. ``` I just tried building without gettext installed: ``` ephemeral / # lddtree /var/tmp/portage/sys-devel/bison-3.8.2-r2/image/usr/bin/bison /var/tmp/portage/sys-devel/bison-3.8.2-r2/image/usr/bin/bison (interpreter => /lib64/ld-linux-x86-64.so.2) libc.so.6 => /lib64/libc.so.6 ``` and with gettext installed: ``` ephemeral / # lddtree /var/tmp/portage/sys-devel/bison-3.8.2-r2/image/usr/bin/bison /var/tmp/portage/sys-devel/bison-3.8.2-r2/image/usr/bin/bison (interpreter => /lib64/ld-linux-x86-64.so.2) libtextstyle.so.0 => /usr/lib64/libtextstyle.so.0 libm.so.6 => /lib64/libm.so.6 libc.so.6 => /lib64/libc.so.6 ``` It looks like the proper fix is to guard this behind a USE flag.
Right, but someone has to do the build system work to add a proper toggle for it.
(In reply to Sam James from comment #7) > Right, but someone has to do the build system work to add a proper toggle > for it. Note that an option (or cache var at least) may exist already, I just haven't looked.
I pinged the mailing list: https://lists.gnu.org/archive/html/bug-bison/2024-02/msg00000.html I also gave it a shot, but my autoconf skills are very primitive :/
(In reply to Raul Rangel from comment #9) > I pinged the mailing list: > https://lists.gnu.org/archive/html/bug-bison/2024-02/msg00000.html > > I also gave it a shot, but my autoconf skills are very primitive :/ Would you mind filing a new Gentoo bug for it (and reference this one) and I can try to look at some point?
(In reply to Sam James from comment #10) > (In reply to Raul Rangel from comment #9) > > I pinged the mailing list: > > https://lists.gnu.org/archive/html/bug-bison/2024-02/msg00000.html > > > > I also gave it a shot, but my autoconf skills are very primitive :/ > > Would you mind filing a new Gentoo bug for it (and reference this one) and I > can try to look at some point? I filed https://bugs.gentoo.org/925100. Thanks!