From f57e9daf74d5fbab6c9a3f5e60e1320a0bf0642d Mon Sep 17 00:00:00 2001 From: Nitin A Kamble Date: Wed, 22 Dec 2010 09:26:07 -0800 Subject: 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 --- .../perl/perl-5.12.2/debian/mod_paths.diff | 98 ++++++++++++++++++++++ 1 file changed, 98 insertions(+) create mode 100644 meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff (limited to 'meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff') diff --git a/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff b/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff new file mode 100644 index 0000000000..bfa4721c43 --- /dev/null +++ b/meta/recipes-devtools/perl/perl-5.12.2/debian/mod_paths.diff @@ -0,0 +1,98 @@ +Subject: Tweak @INC ordering for Debian + +Our order is: + + etc (for config files) + site (5.8.1) + vendor (all) + core (5.8.1) + site (version-indep) + site (pre-5.8.1) + +The rationale being that an admin (via site), or module packager +(vendor) can chose to shadow core modules when there is a newer +version than is included in core. + + +--- + perl.c | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ + 1 files changed, 58 insertions(+), 0 deletions(-) + +diff --git a/perl.c b/perl.c +index 05cea40..023d6a0 100644 +--- a/perl.c ++++ b/perl.c +@@ -4125,6 +4125,11 @@ S_init_perllib(pTHX) + INCPUSH_ADD_SUB_DIRS|INCPUSH_CAN_RELOCATE); + #endif + ++#ifdef DEBIAN ++ /* for configuration where /usr is mounted ro (CPAN::Config, Net::Config) */ ++ S_incpush_use_sep(aTHX_ STR_WITH_LEN("/etc/perl"), 0x0); ++#endif ++ + #ifdef SITEARCH_EXP + /* sitearch is always relative to sitelib on Windows for + * DLL-based path intuition to work correctly */ +@@ -4242,6 +4247,59 @@ S_init_perllib(pTHX) + INCPUSH_ADD_OLD_VERS|INCPUSH_CAN_RELOCATE); + #endif + ++#ifdef DEBIAN ++ /* Non-versioned site directory for local modules and for ++ compatability with the previous packages' site dirs */ ++ S_incpush_use_sep(aTHX_ STR_WITH_LEN("/usr/local/lib/site_perl"), ++ INCPUSH_ADD_SUB_DIRS); ++ ++#ifdef PERL_INC_VERSION_LIST ++ { ++ struct stat s; ++ ++ /* add small buffer in case old versions are longer than the ++ current version */ ++ char sitearch[sizeof(SITEARCH_EXP)+16] = SITEARCH_EXP; ++ char sitelib[sizeof(SITELIB_EXP)+16] = SITELIB_EXP; ++ char const *vers[] = { PERL_INC_VERSION_LIST }; ++ char const **p; ++ ++ char *arch_vers = strrchr(sitearch, '/'); ++ char *lib_vers = strrchr(sitelib, '/'); ++ ++ if (arch_vers && isdigit(*++arch_vers)) ++ *arch_vers = 0; ++ else ++ arch_vers = 0; ++ ++ if (lib_vers && isdigit(*++lib_vers)) ++ *lib_vers = 0; ++ else ++ lib_vers = 0; ++ ++ /* there is some duplication here as incpush does something ++ similar internally, but required as sitearch is not a ++ subdirectory of sitelib */ ++ for (p = vers; *p; p++) ++ { ++ if (arch_vers) ++ { ++ strcpy(arch_vers, *p); ++ if (PerlLIO_stat(sitearch, &s) >= 0 && S_ISDIR(s.st_mode)) ++ S_incpush_use_sep(aTHX_ sitearch, strlen(sitearch), 0x0); ++ } ++ ++ if (lib_vers) ++ { ++ strcpy(lib_vers, *p); ++ if (PerlLIO_stat(sitelib, &s) >= 0 && S_ISDIR(s.st_mode)) ++ S_incpush_use_sep(aTHX_ sitelib, strlen(sitelib), 0x0); ++ } ++ } ++ } ++#endif ++#endif ++ + #ifdef PERL_OTHERLIBDIRS + S_incpush_use_sep(aTHX_ STR_WITH_LEN(PERL_OTHERLIBDIRS), + INCPUSH_ADD_OLD_VERS|INCPUSH_ADD_ARCHONLY_SUB_DIRS +-- +tg: (c823880..) debian/mod_paths (depends on: upstream) -- cgit v1.2.3-54-g00ecf