Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 554682

Summary: net-libs/gnutls-3.3.16 - missing direct dep on sys-apps/texinfo - failure after upgrade to perl-5.22
Product: Gentoo Linux Reporter: Kobboi <gentoo>
Component: [OLD] LibraryAssignee: Crypto team [DISABLED] <crypto+disabled>
Status: RESOLVED FIXED    
Severity: normal CC: alonbl, bkohler, bugzie, gentoo-bugs, grknight, taviscaron
Priority: Normal    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: build.log

Description Kobboi 2015-07-12 21:17:50 UTC
if /bin/sh /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/build-aux/missing makeinfo -I /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc  -I /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc \
 -o /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc/gnutls-guile.info /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc/gnutls-guile.texi; \
then \
  rc=0; \
  CDPATH="${ZSH_VERSION+.}:" && cd /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc; \
else \
  rc=$?; \
  CDPATH="${ZSH_VERSION+.}:" && cd /var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc && \
  $restore $backupdir/* `echo ".//var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc/gnutls-guile.info" | sed 's|[^/]*$||'`; \
fi; \
rm -rf $backupdir; exit $rc
Can't locate Unicode/EastAsianWidth.pm in @INC (you may need to install the Unicode::EastAsianWidth module) (@INC contains: /etc/perl /usr/local/lib64/perl5/5.22.0/x86_64-linux /usr/local/lib64/perl5/5.22.0 /usr/lib64/perl5/vendor_perl/5.22.0/x86_64-linux /usr/lib64/perl5/vendor_perl/5.22.0 /usr/lib64/perl5/5.22.0/x86_64-linux /usr/lib64/perl5/5.22.0 . /usr/share/texinfo) at /usr/share/texinfo/Texinfo/Convert/Unicode.pm line 31.
BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Convert/Unicode.pm line 31.
Compilation failed in require at /usr/share/texinfo/Texinfo/Convert/Text.pm line 27.
BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Convert/Text.pm line 27.
Compilation failed in require at /usr/share/texinfo/Texinfo/Parser.pm line 60.
BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Parser.pm line 60.
Compilation failed in require at /usr/bin/makeinfo line 107.
BEGIN failed--compilation aborted at /usr/bin/makeinfo line 107.
make[4]: *** [/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc/gnutls.info] Error 2
make[4]: *** Waiting for unfinished jobs....
Can't locate Unicode/EastAsianWidth.pm in @INC (you may need to install the Unicode::EastAsianWidth module) (@INC contains: /etc/perl /usr/local/lib64/perl5/5.22.0/x86_64-linux /usr/local/lib64/perl5/5.22.0 /usr/lib64/perl5/vendor_perl/5.22.0/x86_64-linux /usr/lib64/perl5/vendor_perl/5.22.0 /usr/lib64/perl5/5.22.0/x86_64-linux /usr/lib64/perl5/5.22.0 . /usr/share/texinfo) at /usr/share/texinfo/Texinfo/Convert/Unicode.pm line 31.
BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Convert/Unicode.pm line 31.
Compilation failed in require at /usr/share/texinfo/Texinfo/Convert/Text.pm line 27.
BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Convert/Text.pm line 27.
Compilation failed in require at /usr/share/texinfo/Texinfo/Parser.pm line 60.
BEGIN failed--compilation aborted at /usr/share/texinfo/Texinfo/Parser.pm line 60.
Compilation failed in require at /usr/bin/makeinfo line 107.
BEGIN failed--compilation aborted at /usr/bin/makeinfo line 107.
make[4]: *** [/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16/doc/gnutls-guile.info] Error 2
make[4]: Leaving directory `/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16-abi_x86_64.amd64/doc'
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16-abi_x86_64.amd64/doc'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16-abi_x86_64.amd64/doc'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16-abi_x86_64.amd64'
make: *** [all] Error 2
 * ERROR: net-libs/gnutls-3.3.16::gentoo failed (compile phase):
 *   emake failed
 * 
 * If you need support, post the output of `emerge --info '=net-libs/gnutls-3.3.16::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=net-libs/gnutls-3.3.16::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/net-libs/gnutls-3.3.16/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/net-libs/gnutls-3.3.16/temp/environment'.
 * Working directory: '/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16-abi_x86_64.amd64'
 * S: '/var/tmp/portage/net-libs/gnutls-3.3.16/work/gnutls-3.3.16'


Reproducible: Always
Comment 1 Kobboi 2015-07-12 21:22:19 UTC
Note that the upgrade command itself, given enough options, wants to rebuild everything just fine, I assume that there is just something wrong with the order, in the sense that EastAsianWidth should be rebuild before gnutls?

The remaining queue looks like this:

# emerge -avuDN world --keep-going --with-bdeps=y --complete-graph=y --backtrack=300 
These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U  ] net-libs/gnutls-3.3.16::gentoo [3.3.15-r1::gentoo] USE="crywrap cxx examples nls openssl zlib -dane -doc -guile -pkcs11 -static-libs {-test}" ABI_X86="32 (64) (-x32)" LINGUAS="-cs -de -en -fi -fr -it -ms -nl -pl -sv -uk -vi -zh_CN" 0 KiB
[ebuild     U  ] virtual/perl-ExtUtils-MakeMaker-7.40.100_rc::gentoo [7.40.0::gentoo] 0 KiB
[uninstall     ] perl-core/ExtUtils-MakeMaker-7.40.0-r1::gentoo 
[blocks b      ] <perl-core/ExtUtils-MakeMaker-7.40.100_rc ("<perl-core/ExtUtils-MakeMaker-7.40.100_rc" is blocking virtual/perl-ExtUtils-MakeMaker-7.40.100_rc)
[ebuild  rR    ] dev-perl/Unicode-EastAsianWidth-1.330.0-r1::gentoo  0 KiB
[ebuild  rR    ] dev-perl/DBI-1.633.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/Text-Unidecode-1.230.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/Test-Deep-0.115.0-r1::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/URI-1.680.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/IO-Socket-SSL-2.12.0::gentoo  USE="-idn" 0 KiB
[ebuild  rR    ] dev-perl/IO-stringy-2.111.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/Digest-Perl-MD5-1.900.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/IO-HTML-1.1.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/JSON-2.900.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/Archive-Zip-1.480.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/Text-CSV_XS-1.190.0::gentoo  USE="{-test}" 0 KiB
[ebuild     U  ] dev-perl/Log-Agent-1.0.0::gentoo [0.307.0-r1::gentoo] USE="{-test%}" 0 KiB
[ebuild  rR    ] dev-perl/Algorithm-Diff-1.190.300::gentoo  0 KiB
[ebuild  rR    ] dev-perl/HTTP-Message-6.60.0-r1::gentoo  0 KiB
[ebuild  rR    ] dev-perl/WWW-RobotRules-6.20.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/Spreadsheet-ParseExcel-0.650.0::gentoo  USE="unicode -cjk {-test}" 0 KiB
[ebuild  rR    ] dev-perl/HTTP-Negotiate-6.0.1-r1::gentoo  0 KiB
[ebuild  rR    ] dev-perl/HTTP-Cookies-6.0.1-r1::gentoo  0 KiB
[ebuild  rR    ] dev-perl/HTTP-Daemon-6.10.0-r1::gentoo  0 KiB
[ebuild  rR    ] dev-perl/DBD-mysql-4.31.0::gentoo  USE="-embedded {-test}" 0 KiB
[ebuild     U  ] virtual/perl-Data-Dumper-2.158.0::gentoo [2.154.0::gentoo] 0 KiB
[uninstall     ] perl-core/Data-Dumper-2.154.0::gentoo 
[blocks b      ] <perl-core/Data-Dumper-2.158.0 ("<perl-core/Data-Dumper-2.158.0" is blocking virtual/perl-Data-Dumper-2.158.0)
[ebuild  rR    ] dev-perl/Module-Build-0.421.400::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/ExtUtils-Depends-0.404.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/File-BaseDir-0.30.0-r1::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/glib-perl-1.310.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/Cairo-1.105.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/Error-0.170.240::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/DateManip-6.490.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/Crypt-PasswdMD5-1.400.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/File-DesktopEntry-0.40.0-r1::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/Pango-1.224.0::gentoo  0 KiB
[ebuild  rR    ] dev-perl/File-MimeInfo-0.270.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-perl/gtk2-perl-1.249.500::gentoo  0 KiB
[ebuild     U  ] app-arch/engrampa-1.8.1-r1::gentoo [1.8.1::gentoo] USE="-caja -debug" 0 KiB
[ebuild     U  ] dev-ruby/facter-3.0.1-r3::gentoo [3.0.1-r1::gentoo] USE="-debug {-test}" RUBY_TARGETS="ruby19 ruby20 -ruby21 -ruby22" 0 KiB
[ebuild  rR    ] app-arch/rpm-4.12.0.1::gentoo  USE="acl nls -caps -doc -lua -python (-selinux)" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild     U  ] app-admin/puppet-4.2.0::gentoo [4.1.0::gentoo] USE="ldap -augeas -diff -doc -emacs -rrdtool (-selinux) -shadow -sqlite {-test} -vim-syntax -xemacs" RUBY_TARGETS="ruby20 -ruby21" 0 KiB
[ebuild  rR    ] dev-perl/pcsc-perl-1.4.13-r1::gentoo  0 KiB
[ebuild   R    ] net-im/skype-4.3.0.37-r5::gentoo  USE="pulseaudio -apulse -pax_kernel (-selinux) (-plasma%)" 0 KiB
[ebuild  rR    ] mate-base/mate-panel-1.8.1-r1::gentoo  USE="X introspection -networkmanager" 0 KiB
[ebuild     U  ] app-emulation/bochs-2.6-r1::kobboi [2.6::gentoo] USE="X ncurses readline sdl smp wxwidgets x86-64 -3dnow -avx -debugger* -doc -gdb (-svga) -vnc" 0 KiB
[ebuild     U  ] sci-visualization/gnuplot-5.0.1::gentoo [5.0.0::gentoo] USE="X cairo examples gd qt4 readline wxwidgets (-aqua) -bitmap -compat% -doc -ggi -latex -libcaca -libcerf -lua (-svga)" 0 KiB
[ebuild   R    ] dev-libs/DirectFB-1.7.6::gentoo  USE="X alsa dynload egl* gif gstreamer jpeg mad mng opengl png sdl tiff truetype vdpau vorbis zlib -bmp -cddb -debug -divine -doc -drmkms -fbcon -fusiondale -fusionsound -gles2 -imlib2 -input_hub -jpeg2k* -mpeg2 -mpeg3 -multicore -oss -pnm -sawman -static-libs (-swfdec) -timidity -tremor -v4l -webp -xine" CPU_FLAGS_X86="mmx sse" INPUT_DEVICES="evdev keyboard mouse -dynapro -elo2300 -joystick -lirc -mutouch -tslib" VIDEO_CARDS="nvidia -intel -mach64 -mga -neomagic (-nsc) -r128 -radeon -s3 -sis -tdfx -via -vmware" 0 KiB
[ebuild  rR    ] mate-base/caja-1.8.2-r1::gentoo  USE="introspection mate unique -debug {-test} -xmp" 0 KiB
[ebuild  rR    ] app-office/libreoffice-4.4.3.2::gentoo  USE="bluetooth cups dbus eds gnome gstreamer gtk (-aqua) -branding -coinmp -collada -debug (-firebird) -gltf -gtk3 -java -jemalloc -kde -mysql -odk -postgres -telepathy {-test} -vlc" LIBREOFFICE_EXTENSIONS="-nlpsolver -scripting-beanshell -scripting-javascript -wiki-publisher" PYTHON_SINGLE_TARGET="python2_7 -python3_3 -python3_4" PYTHON_TARGETS="python2_7 python3_4 -python3_3" 0 KiB
[ebuild     U  ] virtual/perl-libnet-3.50.0::gentoo [1.270.0::__unknown__] 0 KiB
[uninstall     ] perl-core/libnet-1.270.0::gentoo  USE="-sasl" 
[blocks b      ] <perl-core/libnet-3.50.0 ("<perl-core/libnet-3.50.0" is blocking virtual/perl-libnet-3.50.0)
[ebuild  rR    ] dev-perl/Net-SMTP-SSL-1.30.0::gentoo  USE="{-test}" 0 KiB
[ebuild  rR    ] dev-vcs/git-2.4.5::gentoo  USE="blksha1 curl gnome-keyring gpg gtk iconv nls pcre perl python threads tk webdav -cgi -cvs -doc -emacs -highlight -mediawiki (-ppcsha1) -subversion {-test} -xinetd" PYTHON_TARGETS="python2_7" 0 KiB
[ebuild  rR    ] dev-vcs/gitolite-3.6.3::gentoo  USE="-tools -vim-syntax" 0 KiB
[ebuild  rR    ] dev-perl/libwww-perl-6.50.0::gentoo  USE="ssl" 0 KiB
[ebuild  rR    ] dev-perl/LWP-Protocol-https-6.60.0::gentoo  0 KiB
Comment 2 Kobboi 2015-07-12 21:31:36 UTC
Created attachment 406622 [details]
build.log
Comment 3 Kobboi 2015-07-12 21:42:07 UTC
Nothing to do with gnutls really, just texinfo not finding EastAsianWidth.pm because it is not rebuilt yet?
Comment 4 Kobboi 2015-07-12 21:43:28 UTC
From texinfo-6.0.ebuild:

RDEPEND="!=app-text/tetex-2*
	>=sys-libs/ncurses-5.2-r2
	dev-lang/perl
	dev-perl/libintl-perl
	dev-perl/Unicode-EastAsianWidth
	dev-perl/Text-Unidecode
	nls? ( virtual/libintl )"
DEPEND="${RDEPEND}
	app-arch/xz-utils
	nls? ( sys-devel/gettext )"

src_configure() {
	use static && append-ldflags -static
	econf \
		--with-external-libintl-perl \
		--with-external-Unicode-EastAsianWidth \
		--with-external-Text-Unidecode \
		$(use_enable nls)
}
Comment 5 Nick Wallingford 2015-07-12 22:12:58 UTC
Run 'perl-cleaner --all' as per the ewarn message after updating perl.

You might get away with only updating dev-perl/Unicode-EastAsianWidth but you should really update everything.
Comment 6 Kobboi 2015-07-13 09:45:08 UTC
Well... I was assuming/hoping this would be done automatically. The perl modules are correctly being identified as requiring a rebuild (which was not the case in the past), which is essentially what perl-cleaner does/did. There is just a problem with fitting those rebuilds in with the rest of the system updates.

On my machine at work, Unicode-EastAsianWidth was (accidentally?) correctly rebuilt before gnutls was upgraded, so no issue there.
Comment 7 Ben Kohler gentoo-dev 2015-07-13 17:55:33 UTC
This is related to bug 554774, gnutls is missing a direct build dependency on texinfo.  

If texinfo were in gnutls deps, then these dev-perl/Unicode-EastAsianWidth would be in the dep tree of gnutls, and they'd have been rebuilt before the gnutls upgrade.
Comment 8 Alon Bar-Lev (RETIRED) gentoo-dev 2015-07-13 18:10:00 UTC
this is dup of bug#516024.

are you sure texinfo should be added to gnutls? shouldn't it gtkdoc dep?
Comment 9 Kobboi 2015-07-13 18:13:44 UTC
Also, I read about your experiment in #554774. Note that ocasionally, portage will come up with a different order. Might not always be because of your change, right?
Comment 10 Alon Bar-Lev (RETIRED) gentoo-dev 2015-07-13 18:15:18 UTC
(In reply to Kobboi from comment #9)
> Also, I read about your experiment in #554774. Note that ocasionally,
> portage will come up with a different order. Might not always be because of
> your change, right?

I am unsure what you refer as "your change", but perl cleaner should be run after perl upgrade to have supportable system.
Comment 11 Kobboi 2015-07-13 18:19:59 UTC
Was referring to Ben Kohler, who manually added a texinfo dependency to an ebuild with a similar problem.
Comment 12 Ben Kohler gentoo-dev 2015-07-13 18:32:44 UTC
(In reply to Alon Bar-Lev from comment #8)
> this is dup of bug#516024.
> 
> are you sure texinfo should be added to gnutls? shouldn't it gtkdoc dep?

This is the same failure message as that bug, but now that we have automatic subslot rebuilds, the source of that other bug SHOULD have gone away.  But it has exposed a new bug.   gnutls forgot to specify a dep on texinfo.  It calls makeinfo directly, it should depend on texinfo.

As I understand it, anyway.
Comment 13 Brian Evans (RETIRED) gentoo-dev 2015-07-13 18:34:59 UTC
(In reply to Alon Bar-Lev from comment #10)
> (In reply to Kobboi from comment #9)
> > Also, I read about your experiment in #554774. Note that ocasionally,
> > portage will come up with a different order. Might not always be because of
> > your change, right?
> 
> I am unsure what you refer as "your change", but perl cleaner should be run
> after perl upgrade to have supportable system.

I hit this issue as well.

The perl team has said that it is aiming to deprecate perl-cleaner from any use.
The main perl categories accomplishes this but there are apparent dependency order issues which this bug is aiming to resolve automatically.
Comment 14 Ben Kohler gentoo-dev 2015-07-13 18:44:37 UTC
There's supposed to be a dep chain:  net-libs/gnutls -> sys-apps/texinfo -> dev-perl/Unicode-EastAsianWidth -> dev-lang/perl.  

If the deps in portage were like this now, when portage upgraded perl it would have made sure to rebuild Unicode-EastAsianWidth *before* trying to build anything further up that dep chain.  

It knows it must fix Unicode-EastAsianWidth before texinfo is usable, but it doesn't know texinfo must be usable before gnutls can build, because there's a missing dep.
Comment 15 Alon Bar-Lev (RETIRED) gentoo-dev 2015-07-13 19:09:54 UTC
OK, I revised the doc USE and added texinfo dependency, however, I am unsure this will fix anything in perl as the texinfo package is intact and should have been already rebuilt.

  13 Jul 2015; Alon Bar-Lev <alonbl@gentoo.org> +gnutls-3.3.16-r1.ebuild,
  +gnutls-3.4.3-r1.ebuild, -gnutls-3.3.16.ebuild, -gnutls-3.4.3.ebuild:
  Add texinfo dependency and force doc USE as top level doc in configure,
  bug#554682