Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 30070 - perl-5.8.1-r1 failes on h2ph / gnome-xml/libxml
Summary: perl-5.8.1-r1 failes on h2ph / gnome-xml/libxml
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: All Linux
: High major (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-01 08:12 UTC by alexander j pierce
Modified: 2011-10-30 22:19 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description alexander j pierce 2003-10-01 08:12:25 UTC
h2ph fails during post-install on an infinite recursion somewhere with gnome-xml/libxml/   perhaps on the parserInternals.h header

Portage 2.0.49-r7 (default-x86-1.4, gcc-3.3.1, glibc-2.3.2-r1, 2.6.0-test5-mm4)
=================================================================
System uname: 2.6.0-test5-mm4 i686 Intel(R) Xeon(TM) CPU 2.80GHz
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=pentium4 -funroll-loops -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config /usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config /usr/share/config"
CONFIG_PROTECT_MASK="/etc/afs/C /etc/afs/afsws /etc/gconf /etc/env.d"
CXXFLAGS="-O2 -march=pentium4 -funroll-loops -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="sandbox ccache autoaddcvs"
GENTOO_MIRRORS="http://gentoo.oregonstate.edu http://distro.ibiblio.org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="x86 oss apm avi crypt cups encode foomaticdb gif jpeg libg++ libwww mad mikmod mmx mpeg ncurses pdflib png quicktime spell truetype xml2 xmms xv zlib alsa gdbm berkdb slang readline arts aalib svga java ruby postgres X sdl tcpd pam ssl perl python imlib oggvorbis gnome gtk qt kde opengl ldap afs apache2 artswrappersuid bonobo cdr cscope curl dedicated dga dnd dv dvd esd ethereal faad fltk glut gnomedb gphoto2 gstreamer gtk2 gtkhtml guile icc imagemagick imap jack lcms lua maildir mldonkeypango mng mozcalendar mozilla mozp3p mozsvg mpi offensive openal parse-clocks pic sasl skey slp sse tcltk tiff transcode usb videos wmf wxwin wxwindows Xaw3d xface xine xml xosd xvid -gpm -motif -nls"
Comment 1 Phil Richards 2003-10-01 12:40:03 UTC
Noticed the same thing whilst the emerge was chasing its (infinite) tail.
Hit ^C when I saw it was going round in loops and ...

The package appears to be installed "correctly" - emerge -s perl gives:
*  dev-lang/perl
      Latest version available: 5.8.1-r1
      Latest version installed: 5.8.1-r1
      Size of downloaded files: 11,579 kB
      Homepage:    http://www.perl.org/
      Description: Larry Wall's Practical Extraction and Reporting Language
Comment 2 Olivier Castan 2003-11-17 14:21:14 UTC
There problem lies between the way gnome-xml C headers are organized :
 $ ls -l /usr/include/gnome-xml/libxml
lrwxrwxrwx    1 root     root           22 2003-11-11 19:48 /usr/include/gnome-xml/libxml -> /usr/include/gnome-xml

and h2ph which fails to detect it is parsing an already seen directory when following /usr/include/gnome-xml/libxml symlink. I don't know if h2ph failed with my install, but /usr/lib/perl5/site_perl/5.8.1/i686-linux/gnome-xml/ has a huge collection of subdirs made from libxml recursively included. Perl 5.8.2 does not seem affected...
Comment 3 Markus Nigbur (RETIRED) gentoo-dev 2003-11-18 14:28:28 UTC
do we need h2ph at all?
Comment 4 TGL 2003-12-03 02:37:38 UTC
> do we need h2ph at all?

That's what I wondered yesterday when I saw how long was a perl update 
because of this full /usr/include h2ph process, I was about to open a 
bug on this when I've found this one.

Two possibilities:

 - either perl really need some .ph for all headers on the system, but
in that case perl is currently broken: when I install/update/remove a 
package which comes with headers, nothing makes the corresponding changes
to .ph files. Also, the .ph set for a perl installed during the initial
gentoo system install and the .ph set for the same perl version 
reinstalled after I've installed all my post-stage3 packages are very different... this is not coherent. If this thing is really required,
then portage should updates .ph files whenever he changes some .h
files.

 - or .ph are not required. I tend to think this is the right answer 
since I've never seen bugs about perl modules that can't build because
of .ph files lacks, whereas it obviously often happens that one builds
a perl module that uses a just emerged library, whose headers have not 
been converted.

If this conversion is seen as an optimisation because "this .ph may be 
useful in the futur", I think it is a wrong optimisation. It takes 
much time whereas it is at 99% useless, and will be completly outdated 
at some point. 
Comment 5 Michael Cummings (RETIRED) gentoo-dev 2004-02-27 13:36:19 UTC
fixed with a sensible alteration to how h2ph is called. h2ph is called because this is the perl (as in tm) recommended installation procedure. Closing this bug unless someone needs it reopened for discussion.
Comment 6 CJ Kucera 2004-09-02 10:26:00 UTC
A quick note about this:  Yes, the perl INSTALL doc *does* recommend that you run h2ph.  I can dig that.  However, the docs also recommend that you run THIS command:

cd /usr/include; h2ph *.h sys/*.h

That is *vastly* different from the command run from the ebuild, which is:

cd /usr/include; find ./ -name "*.h" -type f -exec h2ph {} \;

The former would convert 696 .h files on my current system.  The latter is currently in the process of converting *10375* .h files.  That's just crazy.  Pleeease change this in the ebuild, I've been waiting for Perl to get done emerging for almost an hour now.  (That "find" command is present in at least the 5.8.4, 5.8.4-r1, and 5.8.5 ebuilds currently)