Trying to build qemu on rawhide suddenly hits this error: LC_ALL=C makeinfo --no-headers --no-split --number-sections --html qemu-tech.texi -o qemu-tech.html Can't locate Storable.pm in @INC (you may need to install the Storable module) (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 . /usr/share/texinfo) at /usr/share/texinfo/Texinfo/Parser.pm line 48. BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Parser.pm line 48. Compilation failed in require at /usr/bin/makeinfo line 107. BEGIN failed--compilation aborted at /usr/bin/makeinfo line 107. Makefile:496: recipe for target 'qemu-tech.html' failed Previously it looks like 'perl' would pull in perl-Storable, but not anymore. Adding 'BuildRequires: perl-Storable' to qemu fixed the build, but that doesn't seem right. Though maybe the dep should be in texinfo or something...
(In reply to Cole Robinson from comment #0) > > Previously it looks like 'perl' would pull in perl-Storable, but not > anymore. Correct. This is as of perl-5.22.0-350.fc24. > Though maybe the dep should be in texinfo or something... You are correct (rebuilding the current texinfo srpm fails with the same error message).
texinfo is incorrectly filtering out the perl(Storable) requires. My proposed fix: diff --git a/texinfo.spec b/texinfo.spec index f40d7cd..428cdc2 100644 --- a/texinfo.spec +++ b/texinfo.spec @@ -1,21 +1,15 @@ -%global _use_internal_dependency_generator 0 - %global tex_texinfo %{_datadir}/texmf/tex/texinfo Summary: Tools needed to create Texinfo format documentation files Name: texinfo Version: 6.0 -Release: 1%{?dist} +Release: 2%{?dist} License: GPLv3+ Group: Applications/Publishing Url: http://www.gnu.org/software/texinfo/ Source0: ftp://ftp.gnu.org/gnu/texinfo/texinfo-%{version}.tar.xz Source1: ftp://ftp.gnu.org/gnu/texinfo/texinfo-%{version}.tar.xz.sig Source2: info-dir -# Source3: script for filtering out false perl requires -Source3: filter-requires-texinfo.sh -# Source4: script for filtering out false perl provides -Source4: filter-provides-texinfo.sh # Source5: macro definitions Source5: macros.info Patch0: texinfo-4.12-zlib.patch @@ -26,9 +20,11 @@ Requires: perl >= 5.7.3, perl(Text::Unidecode) Requires: perl(Unicode::EastAsianWidth), perl(Data::Dumper), perl(Locale::Messages) BuildRequires: zlib-devel, ncurses-devel, help2man, perl(Data::Dumper) BuildRequires: perl(Locale::Messages), perl(Unicode::EastAsianWidth), perl(Text::Unidecode) +BuildRequires: perl(Storable) -%global __find_requires %{SOURCE3} -%global __find_provides %{SOURCE4} +# Texinfo perl packages are not installed in default perl library dirs +%global __provides_exclude ^perl\\(.*Texinfo.*\\)$ +%global __requires_exclude ^perl\\(.*Texinfo.*\\)$ %description Texinfo is a documentation system that can produce both online @@ -170,6 +166,9 @@ fi %{_mandir}/man1/pdftexi2dvi.1* %changelog +* Sun Aug 9 2015 Orion Poplawski <orion.com> - 6.0-2 +- Add BR on perl(Storable), fix perl requires (bug #1251766) + * Tue Jul 14 2015 Vitezslav Crhonek <vcrhonek> - 6.0-1 - Update to texinfo-6.0 Resolves: #1236254
*** Bug 1251876 has been marked as a duplicate of this bug. ***
Applied, thanks!