Subject: | Fwd: [perl #69566] ExtUtils::ParseXS uses the wrong filename in #line directives when processing INCLUDE: files |
Date: | Sun, 4 Oct 2009 20:55:55 -0400 |
To: | bug-ExtUtils-ParseXS [...] rt.cpan.org |
From: | David Golden <dagolden [...] cpan.org> |
Show quoted text
---------- Forwarded message ----------
From: spb@ (via RT) <perlbug-followup@perl.org>
Date: Sun, Oct 4, 2009 at 10:12 AM
Subject: [perl #69566] ExtUtils::ParseXS uses the wrong filename in
#line directives when processing INCLUDE: files
To: bugs-bitbucket@netlabs.develooper.com
# New Ticket Created by spb@
# Please include the string: [perl #69566]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=69566 >
This is a bug report for perl from spb@exherbo.org,
generated with the help of perlbug 1.39 running under perl 5.10.1.
-----------------------------------------------------------------
When processing an INCLUDE: statement, only the file name, not the path,
is included in the generated #line directives. This is somewhat annoying
when building an XS file that resides in a subdirectory of the project's
source tree, as vim and gdb can't find the source file when debugging or
when compile errors occur.
--- ParseXS.pm.orig 2009-10-04 14:13:57.000000000 +0100
+++ ParseXS.pm 2009-10-04 14:10:34.000000000 +0100
@@ -1516,7 +1516,8 @@
#
EOF
- $filepathname = $filename = $_ ;
+ $filename = $_ ;
+ $filepathname = "$dir/$filename";
# Prime the pump by reading the first
# non-blank line
[Please do not change anything below this line]
-----------------------------------------------------------------
---
Flags:
category=library
severity=low
module=ExtUtils::ParseXS
---
Site configuration information for perl 5.10.1:
Configured by Exherbo at Wed Sep 16 21:00:59 BST 2009.
Summary of my perl5 (revision 5 version 10 subversion 1) configuration:
Platform:
osname=linux, osvers=2.6.25.2, archname=x86_64-linux
uname='linux blashyrk 2.6.25.2 #6 smp wed may 21 20:25:22 utc 2008
x86_64 gnulinux '
config_args='-des -Dcf_by=Exherbo -Dprefix=/usr -Dvendorprefix=/usr
-Dsiteprefix=/usr -Doptimize=-march=k8 -pipe -O2 -ggdb
-Darchname=x86_64-linux -Dlibperl=libperl.so.1.5.10.1
-Dprivlib=/usr/lib64/perl5/5.10.1
-Darchlib=/usr/lib64/perl5/5.10.1/x86_64-linux
-Dsitelib=/usr/lib64/perl5/site_perl/5.10.1
-Dsitearch=/usr/lib64/perl5/site_perl/5.10.1/x86_64-linux
-Dvendorlib=/usr/lib64/perl5/vendor_perl/5.10.1
-Dvendorarch=/usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux
-Uinstallusrbinperl= -Duseshrplib -Dmksymlinks -Duselargefiles
-Ui_ndbm -Ui_gdbm -Ui_db'
hint=recommended, useposix=true, d_sigaction=define
useithreads=undef, usemultiplicity=undef
useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
use64bitint=define, use64bitall=define, uselongdouble=undef
usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-DDEBUGGING -fno-strict-aliasing -pipe
-fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
optimize='-march=k8 -pipe -O2 -ggdb',
cppflags='-DDEBUGGING -fno-strict-aliasing -pipe -fstack-protector'
ccversion='', gccversion='4.4.0', gccosandvers=''
intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
alignbytes=8, prototype=define
Linker and Libraries:
ld='cc', ldflags =' -fstack-protector -L/usr/local/lib'
libpth=/usr/local/lib /lib /usr/lib /lib64 /usr/lib64 /usr/local/lib64
libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc
perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
libc=/lib/libc-2.9.so, so=so, useshrplib=true, libperl=libperl.so.1.5.10.1
gnulibc_version='2.9'
Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E
-Wl,-rpath,/usr/lib64/perl5/5.10.1/x86_64-linux/CORE'
cccdlflags='-fPIC', lddlflags='-shared -march=k8 -pipe -O2 -ggdb
-L/usr/local/lib -fstack-protector'
Locally applied patches:
---
@INC for perl 5.10.1:
/usr/lib64/perl5/5.10.1/x86_64-linux
/usr/lib64/perl5/5.10.1
/usr/lib64/perl5/site_perl/5.10.1/x86_64-linux
/usr/lib64/perl5/site_perl/5.10.1
/usr/lib64/perl5/site_perl/5.10.0/x86_64-linux
/usr/lib64/perl5/site_perl/5.10.0
/usr/lib64/perl5/site_perl/5.8.8
/usr/lib64/perl5/site_perl
/usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux
/usr/lib64/perl5/vendor_perl/5.10.1
/usr/lib64/perl5/vendor_perl/5.10.0
/usr/lib64/perl5/vendor_perl/5.8.8
/usr/lib64/perl5/vendor_perl
.
---
Environment for perl 5.10.1:
HOME=/home/users/stephen
LANG (unset)
LANGUAGE (unset)
LC_ALL=en_GB.UTF-8
LD_LIBRARY_PATH (unset)
LOGDIR (unset)
PATH=/opt/vmware/server/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/bin:/opt/vmware/server/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/bin:/bin:/usr/local/bin:/usr/bin:/bin:/bin:/usr/bin:/usr/games/bin:/home/users/stephen/scripts:/usr/games/bin:/home/users/stephen/scripts
PERL_BADLANG (unset)
SHELL=/bin/bash