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@redhat.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |MODIFIED CC| |jlieskov@redhat.com
------- Additional Comments From jvdias@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@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.
perl-devel@lists.fedoraproject.org