summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'sys-apps')
-rw-r--r--sys-apps/modutils/ChangeLog11
-rw-r--r--sys-apps/modutils/files/digest-modutils-2.4.27-r11
-rw-r--r--sys-apps/modutils/files/modutils-2.4.27-no-nested-function.patch43
-rw-r--r--sys-apps/modutils/modutils-2.4.27-r1.ebuild41
4 files changed, 94 insertions, 2 deletions
diff --git a/sys-apps/modutils/ChangeLog b/sys-apps/modutils/ChangeLog
index 85c9a40cf2d5..a04adb950f09 100644
--- a/sys-apps/modutils/ChangeLog
+++ b/sys-apps/modutils/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for sys-apps/modutils
-# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/modutils/ChangeLog,v 1.50 2005/07/14 02:59:09 vapier Exp $
+# Copyright 1999-2005 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/modutils/ChangeLog,v 1.51 2005/08/18 22:30:15 vapier Exp $
+
+*modutils-2.4.27-r1 (18 Aug 2005)
+
+ 18 Aug 2005; Mike Frysinger <vapier@gentoo.org>
+ +files/modutils-2.4.27-no-nested-function.patch,
+ +modutils-2.4.27-r1.ebuild:
+ Fix by the PaX guys to remove executable stack markings.
14 Jul 2005; Mike Frysinger <vapier@gentoo.org>
+files/modutils-2.4.27-alias.patch, +files/modutils-2.4.27-flex.patch,
diff --git a/sys-apps/modutils/files/digest-modutils-2.4.27-r1 b/sys-apps/modutils/files/digest-modutils-2.4.27-r1
new file mode 100644
index 000000000000..cff8aa358b77
--- /dev/null
+++ b/sys-apps/modutils/files/digest-modutils-2.4.27-r1
@@ -0,0 +1 @@
+MD5 bac989c74ed10f3bf86177fc5b4b89b6 modutils-2.4.27.tar.bz2 234963
diff --git a/sys-apps/modutils/files/modutils-2.4.27-no-nested-function.patch b/sys-apps/modutils/files/modutils-2.4.27-no-nested-function.patch
new file mode 100644
index 000000000000..7af4599c7154
--- /dev/null
+++ b/sys-apps/modutils/files/modutils-2.4.27-no-nested-function.patch
@@ -0,0 +1,43 @@
+Patch by the PaX team to get rid of executable stacks.
+
+--- modutils/insmod/insmod.c
++++ modutils/insmod/insmod.c
+@@ -366,18 +366,21 @@ static void hide_special_symbols(struct
+ sym->info = ELFW(ST_INFO) (STB_LOCAL, ELFW(ST_TYPE) (sym->info));
+ }
+
++static struct obj_file *load_map_file;
++
++static int load_map_cmp(const void *a, const void *b) {
++ struct obj_symbol **as = (struct obj_symbol **) a;
++ struct obj_symbol **bs = (struct obj_symbol **) b;
++ unsigned long aa = obj_symbol_final_value(load_map_file, *as);
++ unsigned long ba = obj_symbol_final_value(load_map_file, *bs);
++ return aa < ba ? -1 : aa > ba ? 1 : 0;
++}
++
+ static void print_load_map(struct obj_file *f)
+ {
+ struct obj_symbol *sym;
+ struct obj_symbol **all, **p;
+ struct obj_section *sec;
+- int load_map_cmp(const void *a, const void *b) {
+- struct obj_symbol **as = (struct obj_symbol **) a;
+- struct obj_symbol **bs = (struct obj_symbol **) b;
+- unsigned long aa = obj_symbol_final_value(f, *as);
+- unsigned long ba = obj_symbol_final_value(f, *bs);
+- return aa < ba ? -1 : aa > ba ? 1 : 0;
+- }
+ int i, nsyms, *loaded;
+
+ /* Report on the section layout. */
+@@ -425,7 +428,9 @@ static void print_load_map(struct obj_fi
+ *p++ = sym;
+
+ /* Sort them by final value. */
++ load_map_file = f;
+ qsort(all, nsyms, sizeof(struct obj_file *), load_map_cmp);
++ load_map_file = NULL;
+
+ /* And list them. */
+ lprintf("\nSymbols:");
diff --git a/sys-apps/modutils/modutils-2.4.27-r1.ebuild b/sys-apps/modutils/modutils-2.4.27-r1.ebuild
new file mode 100644
index 000000000000..b23b08d7b5f8
--- /dev/null
+++ b/sys-apps/modutils/modutils-2.4.27-r1.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2005 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/modutils/modutils-2.4.27-r1.ebuild,v 1.1 2005/08/18 22:30:15 vapier Exp $
+
+inherit eutils
+
+DESCRIPTION="Standard kernel module utilities"
+HOMEPAGE="http://www.kernel.org/pub/linux/utils/kernel/modutils/"
+SRC_URI="mirror://kernel/linux/utils/kernel/${PN}/v2.4/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86"
+IUSE=""
+
+DEPEND="!virtual/modutils"
+PROVIDE="virtual/modutils"
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-alias.patch
+ epatch "${FILESDIR}"/${P}-gcc.patch
+ epatch "${FILESDIR}"/${P}-flex.patch
+ epatch "${FILESDIR}"/${P}-no-nested-function.patch
+}
+
+src_compile() {
+ econf \
+ --prefix=/ \
+ --disable-strip \
+ --enable-insmod-static \
+ --disable-zlib \
+ || die "./configure failed"
+ emake || die "emake failed"
+}
+
+src_install() {
+ einstall prefix="${D}" || die "make install failed"
+ dodoc CREDITS ChangeLog NEWS README TODO
+}