mirror of
https://git.yoctoproject.org/poky
synced 2026-09-14 03:49:32 +02:00
perl: update to 5.14.3
There is a securty issue: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-5195 Update perl to 5.14.3 to resolve this problem. Patches hurd-ccflags.diff, h2ph-multiarch.diff, index-tainting.diff and hurd-hints.diff have been merged, so remove them from SRC_URI. Update patches config.sh and Makefile.SH.patch with new PV. [Yocto 3701] (From OE-Core rev: b1fd25e05308cabb56afe1d4276470bf7380ea59) Signed-off-by: Kang Kai <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
@@ -0,0 +1,87 @@
|
||||
Upstream-Status:Inappropriate [debian patches]
|
||||
From 0c91624f1f9ec46a6f13cad3031b706213233479 Mon Sep 17 00:00:00 2001
|
||||
From: Niko Tyni <ntyni@debian.org>
|
||||
Date: Thu, 28 Apr 2011 09:18:54 +0300
|
||||
Subject: Append CFLAGS and LDFLAGS to their Config.pm counterparts in
|
||||
EU::CBuilder
|
||||
|
||||
Bug: http://rt.perl.org/rt3//Public/Bug/Display.html?id=89478
|
||||
Bug-Debian: http://bugs.debian.org/624460
|
||||
Origin: upstream, http://perl5.git.perl.org/perl.git/commitdiff/011e8fb476b5fb27c9aa613360d918aa0b798b3d
|
||||
|
||||
Since ExtUtils::CBuilder 0.27_04 (bleadperl commit 06e8058f27e4),
|
||||
CFLAGS and LDFLAGS from the environment have overridden the Config.pm
|
||||
ccflags and ldflags settings. This can cause binary incompatibilities
|
||||
between the core Perl and extensions built with EU::CBuilder.
|
||||
|
||||
Append to the Config.pm values rather than overriding them.
|
||||
|
||||
Patch-Name: fixes/extutils-cbuilder-cflags.diff
|
||||
---
|
||||
.../lib/ExtUtils/CBuilder/Base.pm | 6 +++-
|
||||
dist/ExtUtils-CBuilder/t/04-base.t | 25 +++++++++++++++++++-
|
||||
2 files changed, 28 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
|
||||
index b572312..2255c51 100644
|
||||
--- a/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
|
||||
+++ b/dist/ExtUtils-CBuilder/lib/ExtUtils/CBuilder/Base.pm
|
||||
@@ -40,11 +40,13 @@ sub new {
|
||||
$self->{config}{$k} = $v unless exists $self->{config}{$k};
|
||||
}
|
||||
$self->{config}{cc} = $ENV{CC} if defined $ENV{CC};
|
||||
- $self->{config}{ccflags} = $ENV{CFLAGS} if defined $ENV{CFLAGS};
|
||||
+ $self->{config}{ccflags} = join(" ", $self->{config}{ccflags}, $ENV{CFLAGS})
|
||||
+ if defined $ENV{CFLAGS};
|
||||
$self->{config}{cxx} = $ENV{CXX} if defined $ENV{CXX};
|
||||
$self->{config}{cxxflags} = $ENV{CXXFLAGS} if defined $ENV{CXXFLAGS};
|
||||
$self->{config}{ld} = $ENV{LD} if defined $ENV{LD};
|
||||
- $self->{config}{ldflags} = $ENV{LDFLAGS} if defined $ENV{LDFLAGS};
|
||||
+ $self->{config}{ldflags} = join(" ", $self->{config}{ldflags}, $ENV{LDFLAGS})
|
||||
+ if defined $ENV{LDFLAGS};
|
||||
|
||||
unless ( exists $self->{config}{cxx} ) {
|
||||
my ($ccpath, $ccbase, $ccsfx ) = fileparse($self->{config}{cc}, qr/\.[^.]*/);
|
||||
diff --git a/dist/ExtUtils-CBuilder/t/04-base.t b/dist/ExtUtils-CBuilder/t/04-base.t
|
||||
index db0ef98..49819a1 100644
|
||||
--- a/dist/ExtUtils-CBuilder/t/04-base.t
|
||||
+++ b/dist/ExtUtils-CBuilder/t/04-base.t
|
||||
@@ -1,7 +1,7 @@
|
||||
#! perl -w
|
||||
|
||||
use strict;
|
||||
-use Test::More tests => 50;
|
||||
+use Test::More tests => 64;
|
||||
use Config;
|
||||
use Cwd;
|
||||
use File::Path qw( mkpath );
|
||||
@@ -328,6 +328,29 @@ is_deeply( $mksymlists_args,
|
||||
"_prepare_mksymlists_args(): got expected arguments for Mksymlists",
|
||||
);
|
||||
|
||||
+my %testvars = (
|
||||
+ CFLAGS => 'ccflags',
|
||||
+ LDFLAGS => 'ldflags',
|
||||
+);
|
||||
+
|
||||
+while (my ($VAR, $var) = each %testvars) {
|
||||
+ local $ENV{$VAR};
|
||||
+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 );
|
||||
+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" );
|
||||
+ isa_ok( $base, 'ExtUtils::CBuilder::Base' );
|
||||
+ like($base->{config}{$var}, qr/\Q$Config{$var}/,
|
||||
+ "honours $var from Config.pm");
|
||||
+
|
||||
+ $ENV{$VAR} = "-foo -bar";
|
||||
+ $base = ExtUtils::CBuilder::Base->new( quiet => 1 );
|
||||
+ ok( $base, "ExtUtils::CBuilder::Base->new() returned true value" );
|
||||
+ isa_ok( $base, 'ExtUtils::CBuilder::Base' );
|
||||
+ like($base->{config}{$var}, qr/\Q$ENV{$VAR}/,
|
||||
+ "honours $VAR from the environment");
|
||||
+ like($base->{config}{$var}, qr/\Q$Config{$var}/,
|
||||
+ "doesn't override $var from Config.pm with $VAR from the environment");
|
||||
+}
|
||||
+
|
||||
#####
|
||||
|
||||
for ($source_file, $object_file, $lib_file) {
|
||||
Reference in New Issue
Block a user