From 115bf201a775410121d2f9769a4a5bb909cac5fd Mon Sep 17 00:00:00 2001 From: Hongxu Jia Date: Mon, 9 Nov 2015 18:48:29 +0800 Subject: perl: fix spaces in brackets while using CC version Here is the way to reproduce the issue: ... root@localhost:~# perl -e "use Errno qw(ENOENT);" "ENOENT" is not exported by the Errno module Can't continue after import errors at -e line 1. BEGIN failed--compilation aborted at -e line 1. ... For some distros, there was extra spaces in the brackets while using CC version: For Windriver: $CC --version x86_64-wrs-linux-gcc (Wind River Linux 5.2.0-8.0-intel-x86-64) 5.2.0 For Ubuntu: $ gcc --version gcc (Ubuntu 4.8.4-2ubuntu1~14.04) 4.8.4 So we replace the contects between brackets with semicolon and then use space to split. [YOCTO #8367] Signed-off-by: Hongxu Jia Signed-off-by: Ross Burton --- .../perl/perl/perl-errno-generation-gcc5.patch | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) (limited to 'meta/recipes-devtools/perl') diff --git a/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch b/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch index efbc55df29..7379d8b814 100644 --- a/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch +++ b/meta/recipes-devtools/perl/perl/perl-errno-generation-gcc5.patch @@ -5,14 +5,25 @@ is the same as the one being used to build the perl binary. Since most people ar systems with gcc 5, it is unlikely that it will work on any supported host. Switch out gccversion for the version extracted from $CC --version. ---- perl-5.22.0/ext/Errno/Errno_pm.PL 2015-10-19 18:01:20.622143786 -0400 -+++ perl-5.22.0-fixed/ext/Errno/Errno_pm.PL 2015-10-19 17:50:35.662137367 -0400 -@@ -224,9 +224,12 @@ +Jeremy Puhlman + +Fix spaces in brackets while running $CC --version +Signed-off-by: Hongxu Jia +--- + ext/Errno/Errno_pm.PL | 6 +++++- + 1 file changed, 5 insertions(+), 1 deletion(-) + +diff --git a/ext/Errno/Errno_pm.PL b/ext/Errno/Errno_pm.PL +index 1fd29d0..7976ea2 100644 +--- a/ext/Errno/Errno_pm.PL ++++ b/ext/Errno/Errno_pm.PL +@@ -224,9 +224,13 @@ sub write_errno_pm { { # BeOS (support now removed) did not enter this block # invoke CPP and read the output + my $compiler = $ENV{'CC'}; + my $compiler_out = `$compiler --version`; ++ $compiler_out =~ s/\(.*\)/;/; + my @compiler_version = split / /,$compiler_out; my $inhibit_linemarkers = ''; @@ -21,3 +32,6 @@ for the version extracted from $CC --version. # GCC 5.0 interleaves expanded macros with line numbers breaking # each line into multiple lines. RT#123784 $inhibit_linemarkers = ' -P'; +-- +1.9.1 + -- cgit v1.2.3