Files
poky/meta/recipes-devtools/perl/perl-5.12.2/perl-configpm-switch.patch
Nitin A Kamble f57e9daf74 perl, perl-native: upgrade from 5.8.8 to 5.12.2
Deleted these patches as they are part of the upstream code now.
    deleted:    files/perl-5.8.8-gcc-4.2.patch
    deleted:    perl-5.12.2/makedepend-dash.patch
    deleted:    perl-5.12.2/native-no-gdbminc.patch
    deleted:    perl-5.12.2/54_debian_perldoc-r.patch

And rebased these patches to the newer source code
    modified:   files/letgcc-find-errno.patch
    modified:   perl-5.12.2/Makefile.patch
    modified:   perl-5.12.2/asm-pageh-fix.patch
    modified:   perl-5.12.2/native-nopacklist.patch
    modified:   perl-5.12.2/native-perlinc.patch
    modified:   perl-5.12.2/Makefile.SH.patch
    modified:   perl-5.12.2/installperl.patch
    modified:   perl-5.12.2/perl-dynloader.patch
    modified:   perl-5.12.2/09_fix_installperl.patch

get patches from debian perl ver 5.12.2-2
   the fakeroot.diff patch from debian is conflicting with our
   Makefile.SH.patch, hence disabling the fakeroot patch

use newly created config files
   Created with current milestone branch on qemu machines
      modified:   config.sh
      modified:   config.sh-32
      modified:   config.sh-64

get some changes from oe's perl 5.10.1 recipe
   fix the Makefile.SH.patch use miniperl instead of perl
   import a OE 5.10.1 patch: uudmap_cross

fix install issues
   add /usr in the destdir, so that perl gets installed in
   /usr/bin/perl and not in /bin/perl

   link /usr/lib/perl to /usr/lib/perl5 so that operations with
   /usr/lib/perl path in them keep on working.

Fix/Improve perl packaging
   avoid perl-module-module-* kind of packages
   recreate perl-rdepends_5.12.2.inc file with new set of packages
   import from oe perl-rprovide_5.12.2.inc
   combine all unicore perl scripts in one package
   simplify perl-lib
   reduce no of perl recipe packages greatly.

Add zlib to depedancy

fix buildtime host contamination

This also fixes [BUGID #384]

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2011-01-12 00:55:48 -08:00

44 lines
1.4 KiB
Diff

This patch is used for perl-native only. It enables the switching of
configuration files between Config_heavy.pl and
Config_heavy-target.pl by setting the environment variables
PERLCONFIGTARGET - the later containing settings for the target while
the former contains those for the host. This will allow cpan.bbclass
to use the settings appropriate for the native and/or target builds
as required. This also disables the use of the cache since the cached
values would be valid for the host only.
--- perl-5.8.8/configpm 2007/04/30 03:10:43 1.1
+++ perl-5.8.8/configpm 2007/04/30 03:11:56
@@ -374,7 +374,7 @@
my($self, $key) = @_;
# check for cached value (which may be undef so we use exists not defined)
- return $self->{$key} if exists $self->{$key};
+ #return $self->{$key} if exists $self->{$key};
return $self->fetch_string($key);
}
@@ -530,7 +530,21 @@
sub DESTROY { }
sub AUTOLOAD {
- require 'Config_heavy.pl';
+ my $cfgfile = 'Config_heavy.pl';
+ if (defined $ENV{PERLCONFIGTARGET} and $ENV{PERLCONFIGTARGET} eq "yes")
+ {
+ $cfgfile = 'Config_heavy-target.pl';
+ }
+ if (defined $ENV{PERL_ARCHLIB})
+ {
+ push @INC, $ENV{PERL_ARCHLIB};
+ require $cfgfile;
+ pop @INC;
+ }
+ else
+ {
+ require $cfgfile;
+ }
goto \&launcher unless $Config::AUTOLOAD =~ /launcher$/;
die "&Config::AUTOLOAD failed on $Config::AUTOLOAD";
}