diff options
author | Torsten Veller <tove@gentoo.org> | 2009-05-08 05:46:34 +0000 |
---|---|---|
committer | Torsten Veller <tove@gentoo.org> | 2009-05-08 05:46:34 +0000 |
commit | 71946f6fff288db7859b5063196037f22317c478 (patch) | |
tree | ea8ecad5d3d10a88518c1a834bfeec52a0bca6eb /dev-lang | |
parent | Migrate to EAPI=2. Removed old version. (diff) | |
download | gentoo-2-71946f6fff288db7859b5063196037f22317c478.tar.gz gentoo-2-71946f6fff288db7859b5063196037f22317c478.tar.bz2 gentoo-2-71946f6fff288db7859b5063196037f22317c478.zip |
Fix h2ph to handle system headers with quotes
(Portage version: 2.2_rc33/cvs/Linux i686)
Diffstat (limited to 'dev-lang')
-rw-r--r-- | dev-lang/perl/ChangeLog | 6 | ||||
-rw-r--r-- | dev-lang/perl/files/perl-fix_h2ph_include_quote.patch | 61 | ||||
-rw-r--r-- | dev-lang/perl/perl-5.8.8-r6.ebuild | 6 |
3 files changed, 71 insertions, 2 deletions
diff --git a/dev-lang/perl/ChangeLog b/dev-lang/perl/ChangeLog index d599619e39cb..7b08613a2a1d 100644 --- a/dev-lang/perl/ChangeLog +++ b/dev-lang/perl/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for dev-lang/perl # Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/ChangeLog,v 1.278 2009/04/26 11:19:56 bluebird Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/ChangeLog,v 1.279 2009/05/08 05:46:34 tove Exp $ + + 08 May 2009; Torsten Veller <tove@gentoo.org> + +files/perl-fix_h2ph_include_quote.patch, perl-5.8.8-r6.ebuild: + Fix h2ph to handle system headers with quotes 26 Apr 2009; Friedrich Oslage <bluebird@gentoo.org> +files/perl-5.8.8-lib32.patch, files/perl-5.8.8-lib64.patch, diff --git a/dev-lang/perl/files/perl-fix_h2ph_include_quote.patch b/dev-lang/perl/files/perl-fix_h2ph_include_quote.patch new file mode 100644 index 000000000000..a71fbe6e293b --- /dev/null +++ b/dev-lang/perl/files/perl-fix_h2ph_include_quote.patch @@ -0,0 +1,61 @@ +Subject: Fix h2ph with double-quote-delimited #include directives. + +Allow the quote mark delimiter also for those #include directives chased with "h2ph -a". + +Debian bug #479762. + +Also add the directory prefix of the current file when the quote syntax is +used; 'require' will only look in @INC, not the current directory. + +Upstream change 33835. +--- a/utils/h2ph.PL ++++ b/utils/h2ph.PL +@@ -85,7 +85,7 @@ sub reindent($) { + } + + my ($t, $tab, %curargs, $new, $eval_index, $dir, $name, $args, $outfile); +-my ($incl, $incl_type, $next); ++my ($incl, $incl_type, $incl_quote, $next); + while (defined (my $file = next_file())) { + if (-l $file and -d $file) { + link_if_possible($file) if ($opt_l); +@@ -186,9 +186,10 @@ while (defined (my $file = next_file())) { + print OUT $t,"unless(defined(\&$name)) {\n sub $name () {\t",$new,";}\n}\n"; + } + } +- } elsif (/^(include|import|include_next)\s*[<\"](.*)[>\"]/) { ++ } elsif (/^(include|import|include_next)\s*([<\"])(.*)[>\"]/) { + $incl_type = $1; +- $incl = $2; ++ $incl_quote = $2; ++ $incl = $3; + if (($incl_type eq 'include_next') || + ($opt_e && exists($bad_file{$incl}))) { + $incl =~ s/\.h$/.ph/; +@@ -221,6 +222,10 @@ while (defined (my $file = next_file())) { + "warn(\$\@) if \$\@;\n"); + } else { + $incl =~ s/\.h$/.ph/; ++ # copy the prefix in the quote syntax (#include "x.h") case ++ if ($incl !~ m|/| && $incl_quote eq q{"} && $file =~ m|^(.*)/|) { ++ $incl = "$1/$incl"; ++ } + print OUT $t,"require '$incl';\n"; + } + } elsif (/^ifdef\s+(\w+)/) { +@@ -724,8 +729,13 @@ sub queue_includes_from + $line .= <HEADER>; + } + +- if ($line =~ /^#\s*include\s+<(.*?)>/) { +- push(@ARGV, $1) unless $Is_converted{$1}; ++ if ($line =~ /^#\s*include\s+([<"])(.*?)[>"]/) { ++ my ($delimiter, $new_file) = ($1, $2); ++ # copy the prefix in the quote syntax (#include "x.h") case ++ if ($delimiter eq q{"} && $file =~ m|^(.*)/|) { ++ $new_file = "$1/$new_file"; ++ } ++ push(@ARGV, $new_file) unless $Is_converted{$new_file}; + } + } + close HEADER; diff --git a/dev-lang/perl/perl-5.8.8-r6.ebuild b/dev-lang/perl/perl-5.8.8-r6.ebuild index 4907b07a8989..0f6d73dd8507 100644 --- a/dev-lang/perl/perl-5.8.8-r6.ebuild +++ b/dev-lang/perl/perl-5.8.8-r6.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/perl-5.8.8-r6.ebuild,v 1.3 2009/04/26 11:19:56 bluebird Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-lang/perl/perl-5.8.8-r6.ebuild,v 1.4 2009/05/08 05:46:34 tove Exp $ inherit eutils flag-o-matic toolchain-funcs multilib @@ -143,6 +143,10 @@ src_unpack() { # Patch from bug 168312, thanks Peter! has_version '>sys-kernel/linux-headers-2.6.20' && epatch "${FILESDIR}"/${P}-asm-page-h-compile-failure.patch + # Also add the directory prefix of the current file when the quote syntax is + # used; 'require' will only look in @INC, not the current directory. + epatch "${FILESDIR}"/${PN}-fix_h2ph_include_quote.patch + # perlcc fix patch - bug #181229 epatch "${FILESDIR}"/${P}-perlcc.patch |