summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2005-10-04 23:01:07 +0000
committerMike Frysinger <vapier@gentoo.org>2005-10-04 23:01:07 +0000
commit88b45f1e9b2ceae544012c0dcd467e6e3eb9629a (patch)
treebe29813d31a7f9d31d3cb56693280d9f0124fc50 /app-arch
parentClean up ebuild, respect user CFLAGS, and fix executable stack markings. (diff)
downloadgentoo-2-88b45f1e9b2ceae544012c0dcd467e6e3eb9629a.tar.gz
gentoo-2-88b45f1e9b2ceae544012c0dcd467e6e3eb9629a.tar.bz2
gentoo-2-88b45f1e9b2ceae544012c0dcd467e6e3eb9629a.zip
Make sure unzip isnt built with an executable stack.
(Portage version: 2.0.51.22-r2)
Diffstat (limited to 'app-arch')
-rw-r--r--app-arch/unzip/ChangeLog10
-rw-r--r--app-arch/unzip/files/digest-unzip-5.52-r11
-rw-r--r--app-arch/unzip/files/unzip-5.52-no-exec-stack.patch13
-rw-r--r--app-arch/unzip/unzip-5.52-r1.ebuild47
4 files changed, 69 insertions, 2 deletions
diff --git a/app-arch/unzip/ChangeLog b/app-arch/unzip/ChangeLog
index 3a2a5e80b638..ae308f8140e6 100644
--- a/app-arch/unzip/ChangeLog
+++ b/app-arch/unzip/ChangeLog
@@ -1,6 +1,12 @@
# ChangeLog for app-arch/unzip
-# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-arch/unzip/ChangeLog,v 1.34 2005/09/09 15:11:23 agriffis Exp $
+# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/unzip/ChangeLog,v 1.35 2005/10/04 23:01:07 vapier Exp $
+
+*unzip-5.52-r1 (04 Oct 2005)
+
+ 04 Oct 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/unzip-5.52-no-exec-stack.patch, +unzip-5.52-r1.ebuild:
+ Make sure unzip isnt built with an executable stack.
09 Sep 2005; Aron Griffis <agriffis@gentoo.org> unzip-5.52.ebuild:
Mark 5.52 stable on alpha
diff --git a/app-arch/unzip/files/digest-unzip-5.52-r1 b/app-arch/unzip/files/digest-unzip-5.52-r1
new file mode 100644
index 000000000000..1115e1acf992
--- /dev/null
+++ b/app-arch/unzip/files/digest-unzip-5.52-r1
@@ -0,0 +1 @@
+MD5 9d23919999d6eac9217d1f41472034a9 unzip552.tar.gz 1140291
diff --git a/app-arch/unzip/files/unzip-5.52-no-exec-stack.patch b/app-arch/unzip/files/unzip-5.52-no-exec-stack.patch
new file mode 100644
index 000000000000..cd40a8cd179f
--- /dev/null
+++ b/app-arch/unzip/files/unzip-5.52-no-exec-stack.patch
@@ -0,0 +1,13 @@
+Make sure that the asm files don't incorrectly trigger an executable
+stack marking in the final shared library. That's bad, mmmkay.
+
+--- unzip/crc_i386.S
++++ unzip/crc_i386.S
+@@ -238,3 +238,7 @@
+ #endif /* i386 || _i386 || _I386 || __i386 */
+
+ #endif /* !USE_ZLIB */
++
++#ifdef __ELF__
++.section .note.GNU-stack,"",@progbits
++#endif
diff --git a/app-arch/unzip/unzip-5.52-r1.ebuild b/app-arch/unzip/unzip-5.52-r1.ebuild
new file mode 100644
index 000000000000..4a2795fd98be
--- /dev/null
+++ b/app-arch/unzip/unzip-5.52-r1.ebuild
@@ -0,0 +1,47 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-arch/unzip/unzip-5.52-r1.ebuild,v 1.1 2005/10/04 23:01:07 vapier Exp $
+
+inherit eutils toolchain-funcs flag-o-matic
+
+DESCRIPTION="Unzipper for pkzip-compressed files"
+HOMEPAGE="ftp://ftp.info-zip.org/pub/infozip/UnZip.html"
+SRC_URI="ftp://ftp.info-zip.org/pub/infozip/src/${PN}${PV/.}.tar.gz"
+
+LICENSE="Info-ZIP"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc-macos ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE=""
+
+DEPEND=""
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-no-exec-stack.patch
+ append-lfs-flags #104315
+ sed -i \
+ -e "s:-O3:${CFLAGS}:" \
+ -e "s:CC=gcc :CC=$(tc-getCC) :" \
+ -e "s:LD=gcc :LD=$(tc-getCC) :" \
+ -e "s:-O :${CFLAGS} :" \
+ -e "s:LF2 = -s:LF2 = :" \
+ unix/Makefile \
+ || die "sed unix/Makefile failed"
+}
+
+src_compile() {
+ local TARGET
+ use x86 \
+ && TARGET=linux_asm \
+ || TARGET=linux_noasm
+ use userland_Darwin && TARGET=macosx
+ emake -f unix/Makefile ${TARGET} || die "emake failed"
+}
+
+src_install() {
+ dobin unzip funzip unzipsfx unix/zipgrep || die "dobin failed"
+ dosym unzip /usr/bin/zipinfo
+ doman man/*.1
+ dodoc BUGS History* README ToDo WHERE
+}