summaryrefslogtreecommitdiff
path: root/meta/packages/perl/perl.inc
diff options
context:
space:
mode:
Diffstat (limited to 'meta/packages/perl/perl.inc')
-rw-r--r--meta/packages/perl/perl.inc73
1 files changed, 73 insertions, 0 deletions
diff --git a/meta/packages/perl/perl.inc b/meta/packages/perl/perl.inc
new file mode 100644
index 0000000000..52418903a2
--- /dev/null
+++ b/meta/packages/perl/perl.inc
@@ -0,0 +1,73 @@
+DESCRIPTION = "Perl is a popular scripting language."
+HOMEPAGE = "http://www.perl.org/"
+LICENSE = "Artistic|GPL"
+SECTION = "devel"
+PRIORITY = "optional"
+DEPENDS = "virtual/db perl-native"
+
+SRC_URI = "ftp://ftp.funet.fi/pub/CPAN/src/perl-${PV}.tar.gz \
+ file://Makefile.patch;patch=1 \
+ file://config.sh-arm-linux.patch;patch=1 \
+ file://libperl-5.8.3-create-libperl-soname.patch;patch=1;pnum=0 \
+ file://uclibc.patch;patch=1 \
+ file://Makefile.SH.patch \
+ file://config.sh-mipsel-linux \
+ file://config.sh-i686-linux"
+
+HOSTPERL=${STAGING_BINDIR}/perl${PV}
+
+do_configure() {
+ ln -sf ${HOSTPERL} ${STAGING_BINDIR}/hostperl
+ cp ${HOSTPERL} hostperl
+ cd Cross
+ rm Makefile.SH.patch
+ cp ${WORKDIR}/Makefile.SH.patch .
+ cp ${WORKDIR}/config.sh-mipsel-linux .
+ cp ${WORKDIR}/config.sh-i686-linux .
+ cat config.sh-arm-linux | sed -e "s,arm-linux,armeb-linux,g" > config.sh-armeb-linux
+ for i in config.sh-*-linux; do
+ a="`echo $i|sed -e 's,^config.sh-,,; s,-linux$,,'`"
+ newfile="`echo $i|sed -e 's,-linux$,-linux-uclibc,g'`"
+ cat $i | sed -e "s,${a}-linux,${a}-linux-uclibc,g; \
+ s,d_sockatmark='define',d_sockatmark='undef',g;" > $newfile
+ done
+ sed -i -e 's,./install_me_here,${D},g' config.sh-${TARGET_ARCH}-${TARGET_OS}
+ rm -f config
+ echo "ARCH = ${TARGET_ARCH}" > config
+ echo "OS = ${TARGET_OS}" >> config
+ oe_runmake patch
+}
+
+do_compile() {
+ sed -i -e 's|/usr/include|${STAGING_INCDIR}|g' ext/Errno/Errno_pm.PL
+ cd Cross
+ oe_runmake perl
+}
+
+do_install() {
+ oe_runmake install
+ mv ${D}/${libdir}/perl5/${PV}/${TARGET_ARCH}-${TARGET_OS}/CORE/libperl.so ${D}/${libdir}/libperl.so.${PV}
+ ( cd ${D}/usr/bin/; rm perl; ln -s perl${PV} perl )
+}
+
+do_stage() {
+ install -d ${STAGING_DIR}/${HOST_SYS}/perl/
+ install config.sh ${STAGING_DIR}/${HOST_SYS}/perl/
+}
+
+PACKAGES_DYNAMIC = "perl-module-*"
+
+python populate_packages_prepend () {
+ libdir = bb.data.expand('${libdir}/perl5/${PV}', d)
+ archlibdir = bb.data.expand('${libdir}/perl5/${PV}/${TARGET_ARCH}-${TARGET_OS}', d)
+ do_split_packages(d, archlibdir, 'auto/(.*)/', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True)
+ do_split_packages(d, archlibdir, '(.*)\.(pm|pl)', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True)
+ do_split_packages(d, libdir, '(.*)\.(pm|pl)', 'perl-module-%s', 'perl module %s', recursive=True, allow_dirs=False, match_path=True)
+}
+
+PACKAGES = "perl perl-misc perl-lib perl-dev perl-pod"
+FILES_${PN} = "/usr/bin/perl /usr/bin/perl${PV}"
+FILES_${PN}-lib = "/usr/lib/libperl.so*"
+FILES_${PN}-dev = "/usr/lib/perl5/${PV}/${TARGET_ARCH}-${TARGET_OS}/CORE/"
+FILES_${PN}-pod = "/usr/lib/perl5/${PV}/pod"
+FILES_perl-misc = "/usr/bin/"