perl: fix rebuid failed while ${CC} changed

Reproduce steps:

1) bitbake perl
2) vim local.conf to tweak CC, just add redundant option.
...
CC_append = " ${HOST_CC_ARCH}"
...

3) bitbake perl
...
./miniperl -Ilib make_ext.pl lib/auto/Time/HiRes/HiRes.so MAKE=make LIBPERL_A=libperl.so LINKTYPE=dynamic
    Making Time::HiRes (all)my $filename=
Deleting non-Cross makefile
Running Makefile.PL in cpan/Time-HiRes
Makefile.PL: The "xdefine" exists, skipping the configure step.
("tmp/sysroots/x86_64-linux/usr/bin/perl-native/perl5.20.0.real Makefile.PL --configure" to force the configure step)
Warning: No Makefile!
make[2]: Entering directory `tmp/work/armv5te-poky-linux-gnueabi/perl/5.20.0-r1/perl-5.20.0/cpan/Time-HiRes'
make[2]: *** No rule to make target `config'.  Stop.
...

While ${CC} changed, the existance of 'xdefine' caused makefile
regeneration failed.

[YOCTO #6569]

(From OE-Core rev: fa43d4f268bc4a6fafcf14029049f2997bc72d6c)

Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Hongxu Jia
2014-07-24 09:57:17 +08:00
committed by Richard Purdie
parent 5a7f510a68
commit 30ef7b2c05
2 changed files with 31 additions and 0 deletions

View File

@@ -0,0 +1,30 @@
make_ext.pl: fix regenerate makefile failed while $cc changed
While $cc changed, the existance of 'xdefine' caused makefile
regeneration failed.
Upstream-Status: Pending
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
---
make_ext.pl | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/make_ext.pl b/make_ext.pl
index b433762..9fc1a36 100644
--- a/make_ext.pl
+++ b/make_ext.pl
@@ -335,6 +335,10 @@ sub build_extension {
print "Deleting non-Cross makefile\n";
close $mfh or die "close $makefile: $!";
_unlink($makefile);
+ if(-e 'xdefine') {
+ print "Deleting xdefine for regenerate makefile\n";
+ _unlink('xdefine');
+ }
}
}
}
--
1.8.1.2

View File

@@ -74,6 +74,7 @@ SRC_URI += " \
file://config.sh-64-be \
file://perl-5.14.3-fix-CVE-2010-4777.patch \
file://0001-Makefile.SH-fix-do_install-failed.patch \
file://make_ext.pl-fix-regenerate-makefile-failed-while-cc-.patch \
"
# Fix test case issues