diff options
Diffstat (limited to 'sys-apps/modutils')
-rw-r--r-- | sys-apps/modutils/ChangeLog | 11 | ||||
-rw-r--r-- | sys-apps/modutils/files/digest-modutils-2.4.27-r1 | 1 | ||||
-rw-r--r-- | sys-apps/modutils/files/modutils-2.4.27-no-nested-function.patch | 43 | ||||
-rw-r--r-- | sys-apps/modutils/modutils-2.4.27-r1.ebuild | 41 |
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 +} |