diff options
-rw-r--r-- | main/perl/APKBUILD | 41 | ||||
-rw-r--r-- | main/perl/CVE-2011-3597.patch | 28 |
2 files changed, 31 insertions, 38 deletions
diff --git a/main/perl/APKBUILD b/main/perl/APKBUILD index 21a54bb4d1..d87904536d 100644 --- a/main/perl/APKBUILD +++ b/main/perl/APKBUILD @@ -1,15 +1,16 @@ # Maintainer: Natanael Copa <ncopa@alpinelinux.org> # Contributor: Leonardo Arena <rnalrd@alpinelinux.org> pkgname=perl -pkgver=5.14.2 -pkgrel=1 +pkgver=5.16.0 +pkgrel=0 pkgdesc="Larry Wall's Practical Extraction and Report Language" url=http://www.perl.org arch="all" license="Artistic GPL-2" source="http://www.cpan.org/src/5.0/perl-$pkgver.tar.gz - CVE-2011-3597.patch " +options="!fhs" + depends= subpackages="$pkgname-dev $pkgname-doc miniperl" @@ -26,6 +27,11 @@ prepare() { sed -i -e 's/libswanted="\(.*\) nsl\(.*\)"/libswanted="\1\2"/g' ./Configure } +_privlib=/usr/share/perl5/core_perl +_archlib=/usr/lib/perl5/core_perl +_vendorlib=/usr/share/perl5/vendor_perl +_vendorarch=/usr/lib/perl5/vendor_perl + build() { cd $_builddir ./Configure -des \ @@ -33,11 +39,11 @@ build() { -Dcccdlflags='-fPIC' \ -Dccdlflags='-rdynamic' \ -Dprefix=/usr \ - -Dprivlib=/usr/share/perl5/core_perl \ - -Darchlib=/usr/lib/perl5/core_perl \ + -Dprivlib=$_privlib \ + -Darchlib=$_archlib \ -Dvendorprefix=/usr \ - -Dvendorlib=/usr/share/perl5/vendor_perl \ - -Dvendorarch=/usr/lib/perl5/vendor_perl \ + -Dvendorlib=$_vendorlib \ + -Dvendorarch=$_vendorarch \ -Dsiteprefix=/usr/local \ -Dsitelib=/usr/local/share/perl5/site_perl \ -Dsitearch=/usr/local/lib/perl5/site_perl \ @@ -58,12 +64,16 @@ build() { -Ud_csh \ -Dusenm \ || return 1 - make + make libperl.so && make || return 1 } package() { cd "$srcdir/$pkgname-$pkgver" make install DESTDIR="$pkgdir" + if [ -n "$(find $pkgdir/usr/local -type f)" ]; then + error "files found under /usr/local" + return 1 + fi } miniperl() { @@ -72,5 +82,16 @@ miniperl() { cp "$srcdir/perl-$pkgver"/miniperl "$subpkgdir/usr/bin" } -md5sums="3306fbaf976dcebdcd49b2ac0be00eb9 perl-5.14.2.tar.gz -0212067da7d533fe3939c0984cad4243 CVE-2011-3597.patch" +dev() { + mkdir -p "$subpkgdir"/$_privlib + mv "$pkgdir"/$_privlib/Encode "$subpkgdir"/$_privlib/ || return 1 + default_dev + replaces="perl" + mkdir -p "$subpkgdir"/usr/bin + for i in enc2xs h2xs libnetcfg perlivp; do + mv "$pkgdir"/usr/bin/$i "$subpkgdir"/usr/bin/ || return 1 + done +} + + +md5sums="9847f7633da2e4cea016ba6c4020ec4c perl-5.16.0.tar.gz" diff --git a/main/perl/CVE-2011-3597.patch b/main/perl/CVE-2011-3597.patch deleted file mode 100644 index dc7cc2d749..0000000000 --- a/main/perl/CVE-2011-3597.patch +++ /dev/null @@ -1,28 +0,0 @@ -From dbcab24bb98b4a243c8330bc7017c2080832b3f9 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Petr=20P=C3=ADsa=C5=99?= <ppisar@redhat.com> -Date: Tue, 4 Oct 2011 13:46:39 +0200 -Subject: [PATCH] Fix code injection in Digest - -See <https://bugzilla.redhat.com/show_bug.cgi?id=743010> for more details. ---- - cpan/Digest/Digest.pm | 4 +++- - 1 files changed, 3 insertions(+), 1 deletions(-) - -diff --git a/cpan/Digest/Digest.pm b/cpan/Digest/Digest.pm -index 384dfc8..4b923ae 100644 ---- a/cpan/Digest/Digest.pm -+++ b/cpan/Digest/Digest.pm -@@ -35,7 +35,9 @@ sub new - ($class, @args) = @$class if ref($class); - no strict 'refs'; - unless (exists ${"$class\::"}{"VERSION"}) { -- eval "require $class"; -+ my $pm_file = $class . ".pm"; -+ $pm_file =~ s{::}{/}g; -+ eval { require $pm_file }; - if ($@) { - $err ||= $@; - next; --- -1.7.6.4 - |