[Bug 189833] h2ph problem with gcc internal defines

bugzilla at redhat.com bugzilla at redhat.com
Mon Apr 24 23:40:31 UTC 2006


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: h2ph problem with gcc internal defines


https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=189833


jvdias at redhat.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |MODIFIED
                 CC|                            |jlieskov at redhat.com




------- Additional Comments From jvdias at redhat.com  2006-04-24 19:40 EST -------
I was under the mistaken impression that this bug did not affect RHEL-3 -
but it does:

$ perl -e 'require "sys/socket.ph";'
Can't locate features.ph in @INC (did you run h2ph?) 
$ perl -v
...
This is perl, v5.8.0 built for ppc-linux-thread-multi
...
$ uname -a 
uname -a
Linux pseries.test.redhat.com 2.4.21-37.0.1.EL #1 SMP Wed Jan 11 18:37:26 EST
2006 ppc64 ppc64 ppc64 GNU/Linux


This bug was found during testing of errata 2006:294 by  
Jan Lieskovsky <jlieskov at redhat.com> , during an attempted run of RHTS
test script 185240.t, which failed.

This test succeeded on my test machine because I had run h2ph on many
include files manually a long time ago, and they were not removed by
rpm upgrade - I had forgotten about them.

It seems that this never worked in 5.8.0-89.10, the RHEL-3-U4 perl, either,
since this make command, used to generate the list of headers to convert, 
failed, and 5.8.0-89.10 does not contain features.ph either :
---
# Generate *.ph files with a trick. Is this sick or what ?
make all -f - <<EOF
PKGS	= glibc-devel gdbm-devel gpm-devel libgr-devel libjpeg-devel \
	  libpng-devel libtiff-devel ncurses-devel popt \
	  zlib-devel binutils libelf e2fsprogs-devel pam pwdb \
	  rpm-devel
STDH	= \$(filter %{_includedir}/include/%%, \$(shell rpm -q --queryformat
'[%%{FILENAMES}\n]' \$(PKGS)))
...
---
While maybe not "sick", it was definitely not "well", as the rpm listing failed
owing to the nonexistence of 'libgr-devel" (or "libelf") , so none of the 
headers intended to be shipped by the rpm listing were shipped.

This is now fixed with perl-5.8.0-93.EL3, which ships all the headers in :
         gcc glibc-headers glibc-kernheaders binutils elfutils-devel  \
         gdbm-devel gpm-devel libjpeg-devel \
	 libpng-devel libtiff-devel ncurses-devel popt \
	 zlib-devel e2fsprogs-devel pam-devel \
	 rpm-devel | egrep '\.h$'

Now the socket.ph requires succeeds, though with some warnings:
$ perl -e 'require "sys/socket.ph";'
Scalar found where operator expected at (eval 147) line 1, near "'int'  $__val"
        (Missing operator before   $__val?)
String found where operator expected at (eval 394) line 1, near "&__const
'struct sockaddr'"
        (Missing operator before  'struct sockaddr'?)
$ echo $?
0

The same warnings are generated when I convert the RHEL-3 headers with the
latest upstream perl-5.8.8 version - it is an upstream h2ph problem, that
I will fix in FC-{6,5,4} and later in RHEL-{3,4} in due course, but which is 
not critical for RHEL-3 - the requires and all tests now succeed.

-- 
Configure bugmail: https://bugzilla.redhat.com/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




More information about the Fedora-perl-devel-list mailing list