Description of Problem: require 'sys/syscall.ph' fails due to missing perl header files Version-Release number of selected component (if applicable): perl-5.6.1-34.99.6 How Reproducible: always Steps to Reproduce: perl <<'EOF' require 'sys/syscall.ph' EOF Actual Results: lots of error messages Expected Results: no error messages Additional Information: fixed by: # cd /usr/include && h2ph * sys/* bits/* (note addition of bits/* to what is suggested in man h2ph )
the issue in the original comment has been resolved in Red Hat 9 (perl-5.8.0-88). however, some headers are still missing, since the list of files is filtered against just a few directories. here's the relevant excerpt from spec-file: # 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))) STDH +=\$(wildcard %{_includedir}/linux/*.h) \ \$(wildcard %{_includedir}/bits/*.h) \ \$(wildcard %{_includedir}/sys/*.h) \ \$(wildcard %{_includedir}/scsi/*.h) # \$(wildcard %{_includedir}/asm/*.h) in particular, I'm missing errno.ph. however, just adding \$(wildcard %{_includedir}/*.h) isn't sufficient since it includes bits/errno.h -> linux/errno.h -> asm/errno.h note that <errno.h> is the official location of the header, so substituting require 'sys/errno.ph' in my Perl code is unportable. therefore both *.h and asm/*.h must be added. (actually, looking closer: the original problem has _not_ been resolved, since bits/syscall.h assumes asm/unistd.h has been included)
List, is this still an issue?
sys/syscall.ph works, errno.ph doesn't. this is with perl-5.8.6-15
Closing as duplicate against a more coherent explanation of this problem. *** This bug has been marked as a duplicate of 172236 ***