aboutsummaryrefslogtreecommitdiffstats
path: root/recipes/perl/perl-native_5.10.1.bb
diff options
context:
space:
mode:
authorRoman I Khimov <khimov@altell.ru>2010-03-04 14:56:21 +0300
committerRoman I Khimov <khimov@altell.ru>2010-03-24 00:45:25 +0300
commit652b665d0b6a7f7a71405ee4568a487ffc516fa8 (patch)
tree9cc1fca12ceda15e5ec5e6c31ac38c6fc7d1f98d /recipes/perl/perl-native_5.10.1.bb
parent5ae979b0ab285bc06fdd51c133379e91bea7de34 (diff)
downloadopenembedded-652b665d0b6a7f7a71405ee4568a487ffc516fa8.tar.gz
perl: add version 5.10.1
Brings perl up to date. Biggest packaging change - make use of Debian patchset as whole. OE used lots of Debian patches anyway and the overall setup is very similar. So instead of picking and messing with individual patches it's far more easier to just use Debian's diff.gz as a whole. Added with masked preference, since it needs more testing. Currently it was only compiled and ran on i686. Signed-off-by: Roman I Khimov <khimov@altell.ru>
Diffstat (limited to 'recipes/perl/perl-native_5.10.1.bb')
-rw-r--r--recipes/perl/perl-native_5.10.1.bb102
1 files changed, 102 insertions, 0 deletions
diff --git a/recipes/perl/perl-native_5.10.1.bb b/recipes/perl/perl-native_5.10.1.bb
new file mode 100644
index 0000000000..a56805c0ce
--- /dev/null
+++ b/recipes/perl/perl-native_5.10.1.bb
@@ -0,0 +1,102 @@
+DESCRIPTION = "Perl is a popular scripting language."
+HOMEPAGE = "http://www.perl.org/"
+SECTION = "libs"
+LICENSE = "Artistic|GPL"
+DEPENDS = "virtual/db-native gdbm-native"
+PR = "r0"
+
+# Not tested enough
+DEFAULT_PREFERENCE = "-1"
+
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/perl-${PV}"
+
+SRC_URI = "http://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz;name=perl-${PV} \
+ file://Configure-multilib.patch;patch=1 \
+ file://perl-configpm-switch.patch;patch=1 \
+ file://native-nopacklist.patch;patch=1 \
+ file://native-perlinc.patch;patch=1 \
+ "
+
+SRC_URI[perl-5.10.1.md5sum] = "b9b2fdb957f50ada62d73f43ee75d044"
+SRC_URI[perl-5.10.1.sha256sum] = "cb7f26ea4b2b28d6644354d87a269d01cac1b635287dae64e88eeafa24b44f35"
+
+S = "${WORKDIR}/perl-${PV}"
+
+inherit native
+
+do_configure () {
+ ./Configure \
+ -Dcc="${CC}" \
+ -Dcflags="${CFLAGS}" \
+ -Dldflags="${LDFLAGS}" \
+ -Dcf_by="Open Embedded" \
+ -Dprefix=${prefix} \
+ -Dvendorprefix=${prefix} \
+ -Dvendorprefix=${prefix} \
+ -Dsiteprefix=${prefix} \
+ \
+ -Dprivlib=${STAGING_LIBDIR}/perl/${PV} \
+ -Darchlib=${STAGING_LIBDIR}/perl/${PV} \
+ -Dvendorlib=${STAGING_LIBDIR}/perl/${PV} \
+ -Dvendorarch=${STAGING_LIBDIR}/perl/${PV} \
+ -Dsitelib=${STAGING_LIBDIR}/perl/${PV} \
+ -Dsitearch=${STAGING_LIBDIR}/perl/${PV} \
+ \
+ -Duseshrplib \
+ -Dusethreads \
+ -Duseithreads \
+ -Duselargefiles \
+ -Dnoextensions=ODBM_File \
+ -Ud_dosuid \
+ -Ui_db \
+ -Ui_ndbm \
+ -Ui_gdbm \
+ -Di_shadow \
+ -Di_syslog \
+ -Duseperlio \
+ -Dman3ext=3pm \
+ -Uafs \
+ -Ud_csh \
+ -Uusesfio \
+ -Uusenm -des
+ sed "s!${STAGING_DIR}/bin!${STAGING_BINDIR}!;
+ s!${STAGING_DIR}/lib!${STAGING_LIBDIR}!;
+ s!^installbin=.*!installbin=\'${STAGING_BINDIR}\'!;
+ s!^installsitebin=.*!installsitebin=\'${STAGING_BINDIR}\'!" < config.sh > config.sh.new
+ mv config.sh.new config.sh
+}
+do_stage_append() {
+ # We need a hostperl link for building perl
+ ln -sf ${STAGING_BINDIR_NATIVE}/perl${PV} ${STAGING_BINDIR_NATIVE}/hostperl
+ # Store native config in non-versioned directory
+ install -d ${STAGING_LIBDIR_NATIVE}/perl/${PV}/CORE \
+ ${STAGING_DATADIR_NATIVE}/perl/${PV}/ExtUtils
+ install config.sh ${STAGING_LIBDIR}/perl
+ # target configuration
+ install lib/Config.pm ${STAGING_LIBDIR_NATIVE}/perl/${PV}/
+ install lib/ExtUtils/xsubpp ${STAGING_DATADIR_NATIVE}/perl/${PV}/ExtUtils/
+ install lib/ExtUtils/typemap ${STAGING_DATADIR_NATIVE}/perl/${PV}/ExtUtils/
+ # perl shared library headers
+ for i in av.h embed.h gv.h keywords.h op.h perlio.h pp.h regexp.h \
+ uconfig.h XSUB.h cc_runtime.h embedvar.h handy.h opnames.h \
+ perliol.h pp_proto.h regnodes.h unixish.h config.h EXTERN.h \
+ hv.h malloc_ctl.h pad.h perlsdio.h proto.h scope.h utf8.h \
+ cop.h fakesdio.h INTERN.h mg.h patchlevel.h perlsfio.h \
+ reentr.h sv.h utfebcdic.h cv.h fakethr.h intrpvar.h \
+ nostdio.h overload.h parser.h perlapi.h perlvars.h util.h \
+ dosish.h form.h iperlsys.h opcode.h perl.h perly.h regcomp.h \
+ thread.h warnings.h; do
+ install $i ${STAGING_LIBDIR_NATIVE}/perl/${PV}/CORE
+ done
+
+ # Fix Errno.pm for target builds
+ sed -i -r "s,^\tdie\ (\"Errno\ architecture.+)$,\twarn\ \1," ${STAGING_LIBDIR_NATIVE}/perl/${PV}/Errno.pm
+}
+do_stage_append_nylon() {
+ # get rid of definitions not supported by the gcc version we use for nylon...
+ for i in ${STAGING_LIBDIR_NATIVE}/perl/${PV}/Config_heavy.pl ${STAGING_LIBDIR}/perl/config.sh; do
+ perl -pi -e 's/-Wdeclaration-after-statement //g' ${i}
+ done
+}
+
+PARALLEL_MAKE = ""