summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTony Vroon <chainsaw@gentoo.org>2005-02-18 20:03:14 +0000
committerTony Vroon <chainsaw@gentoo.org>2005-02-18 20:03:14 +0000
commitcf99bb5df5554edbb5ef035bbbfddb27d3552dcc (patch)
treed2475709ee1dde268f5d3a8b3f86fdb75302efaa
parentnew package (diff)
downloadgentoo-2-cf99bb5df5554edbb5ef035bbbfddb27d3552dcc.tar.gz
gentoo-2-cf99bb5df5554edbb5ef035bbbfddb27d3552dcc.tar.bz2
gentoo-2-cf99bb5df5554edbb5ef035bbbfddb27d3552dcc.zip
GCC 4 compatability update; closes bug #80588
(Portage version: 2.0.51-r15)
-rw-r--r--sys-apps/module-init-tools/ChangeLog6
-rw-r--r--sys-apps/module-init-tools/files/modutils-2.4.27-gcc4.patch162
-rw-r--r--sys-apps/module-init-tools/module-init-tools-3.1.ebuild3
3 files changed, 169 insertions, 2 deletions
diff --git a/sys-apps/module-init-tools/ChangeLog b/sys-apps/module-init-tools/ChangeLog
index eb41ec82b103..dfd8456ceced 100644
--- a/sys-apps/module-init-tools/ChangeLog
+++ b/sys-apps/module-init-tools/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for sys-apps/module-init-tools
# Copyright 2002-2005 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/ChangeLog,v 1.76 2005/02/17 02:27:53 solar Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/ChangeLog,v 1.77 2005/02/18 20:03:14 chainsaw Exp $
+
+ 18 Feb 2005; Tony Vroon <chainsaw@gentoo.org>
+ +files/modutils-2.4.27-gcc4.patch, module-init-tools-3.1.ebuild:
+ GCC 4 compatability update; closes bug #80588
16 Feb 2005; <solar@gentoo.org> module-init-tools-3.1.ebuild:
- filtering pic is no longer needed
diff --git a/sys-apps/module-init-tools/files/modutils-2.4.27-gcc4.patch b/sys-apps/module-init-tools/files/modutils-2.4.27-gcc4.patch
new file mode 100644
index 000000000000..4e2145e49fbf
--- /dev/null
+++ b/sys-apps/module-init-tools/files/modutils-2.4.27-gcc4.patch
@@ -0,0 +1,162 @@
+diff -urN ../tmp-orig/modutils-2.4.26/depmod/depmod.c ./depmod/depmod.c
+--- ../tmp-orig/modutils-2.4.26/depmod/depmod.c 2003-03-23 02:34:28.000000000 +0000
++++ ./depmod/depmod.c 2004-11-30 09:58:15.000000000 +0000
+@@ -1133,7 +1133,7 @@
+
+ for (ksym = ksyms; so_far < nksyms; ++so_far, ksym++) {
+ if (strncmp((char *)ksym->name, "GPLONLY_", 8) == 0)
+- ((char *)ksym->name) += 8;
++ ksym->name = ((char *)ksym->name) + 8;
+ assert(n_syms < MAX_MAP_SYM);
+ symtab[n_syms++] = addsym((char *)ksym->name, mod, SYM_DEFINED, 0);
+ }
+diff -urN ../tmp-orig/modutils-2.4.26/genksyms/genksyms.c ./genksyms/genksyms.c
+--- ../tmp-orig/modutils-2.4.26/genksyms/genksyms.c 2002-03-01 00:39:06.000000000 +0000
++++ ./genksyms/genksyms.c 2004-11-30 09:58:15.000000000 +0000
+@@ -45,7 +45,7 @@
+ int flag_debug, flag_dump_defs, flag_warnings;
+ int checksum_version = 1, kernel_version = version(2,0,0);
+
+-static int errors;
++static int _errors;
+ static int nsyms;
+
+ static struct symbol *expansion_trail;
+@@ -458,7 +458,7 @@
+ va_end(args);
+ putc('\n', stderr);
+
+- errors++;
++ _errors++;
+ }
+ }
+
+@@ -476,7 +476,7 @@
+ va_end(args);
+ putc('\n', stderr);
+
+- errors++;
++ _errors++;
+ }
+ }
+
+@@ -597,5 +597,5 @@
+ nsyms, HASH_BUCKETS, (double)nsyms / (double)HASH_BUCKETS);
+ }
+
+- return errors != 0;
++ return _errors != 0;
+ }
+diff -urN ../tmp-orig/modutils-2.4.26/insmod/insmod.c ./insmod/insmod.c
+--- ../tmp-orig/modutils-2.4.26/insmod/insmod.c 2003-10-27 02:34:46.000000000 +0000
++++ ./insmod/insmod.c 2004-11-30 09:57:07.000000000 +0000
+@@ -275,7 +275,7 @@
+ if (strncmp((char *)s->name, "GPLONLY_", 8) == 0) {
+ gplonly_seen = 1;
+ if (gpl)
+- ((char *)s->name) += 8;
++ s->name = ((char *)s->name) + 8;
+ else
+ continue;
+ }
+diff -urN ../tmp-orig/modutils-2.4.26/insmod/insmod.c.rej ./insmod/insmod.c.rej
+--- ../tmp-orig/modutils-2.4.26/insmod/insmod.c.rej 1970-01-01 00:00:00.000000000 +0000
++++ ./insmod/insmod.c.rej 2004-11-30 09:58:17.000000000 +0000
+@@ -0,0 +1,17 @@
++***************
++*** 275,281 ****
++ if (strncmp((char *)s->name, "GPLONLY_", 8) == 0) {
++ gplonly_seen = 1;
++ if (gpl)
++- ((char *)s->name) += 8;
++ else
++ continue;
++ }
++--- 275,281 ----
++ if (strncmp((char *)s->name, "GPLONLY_", 8) == 0) {
++ gplonly_seen = 1;
++ if (gpl)
+++ s->name = ((char *)s->name) + 8;
++ else
++ continue;
++ }
+diff -urN ../tmp-orig/modutils-2.4.26/obj/obj_kallsyms.c ./obj/obj_kallsyms.c
+--- ../tmp-orig/modutils-2.4.26/obj/obj_kallsyms.c 2002-03-01 00:39:06.000000000 +0000
++++ ./obj/obj_kallsyms.c 2004-11-30 09:54:52.000000000 +0000
+@@ -200,8 +200,8 @@
+
+ /* Initial contents, header + one entry per input section. No strings. */
+ osec->header.sh_size = sizeof(*a_hdr) + loaded*sizeof(*a_sec);
+- a_hdr = (struct kallsyms_header *) osec->contents =
+- xmalloc(osec->header.sh_size);
++ osec->contents = xmalloc(osec->header.sh_size);
++ a_hdr = (struct kallsyms_header *) osec->contents;
+ memset(osec->contents, 0, osec->header.sh_size);
+ a_hdr->size = sizeof(*a_hdr);
+ a_hdr->sections = loaded;
+@@ -275,8 +275,8 @@
+ a_hdr->symbol_off +
+ a_hdr->symbols*a_hdr->symbol_size +
+ strings_size - strings_left;
+- a_hdr = (struct kallsyms_header *) osec->contents =
+- xrealloc(a_hdr, a_hdr->total_size);
++ osec->contents = xrealloc(a_hdr, a_hdr->total_size);
++ a_hdr = (struct kallsyms_header *) osec->contents;
+ p = (char *)a_hdr + a_hdr->symbol_off;
+ memcpy(p, symbols, a_hdr->symbols*a_hdr->symbol_size);
+ free(symbols);
+diff -urN ../tmp-orig/modutils-2.4.26/obj/obj_kallsyms.c.rej ./obj/obj_kallsyms.c.rej
+--- ../tmp-orig/modutils-2.4.26/obj/obj_kallsyms.c.rej 1970-01-01 00:00:00.000000000 +0000
++++ ./obj/obj_kallsyms.c.rej 2004-11-30 09:58:18.000000000 +0000
+@@ -0,0 +1,38 @@
++***************
++*** 200,207 ****
++
++ /* Initial contents, header + one entry per input section. No strings. */
++ osec->header.sh_size = sizeof(*a_hdr) + loaded*sizeof(*a_sec);
++- a_hdr = (struct kallsyms_header *) osec->contents =
++- xmalloc(osec->header.sh_size);
++ memset(osec->contents, 0, osec->header.sh_size);
++ a_hdr->size = sizeof(*a_hdr);
++ a_hdr->sections = loaded;
++--- 200,207 ----
++
++ /* Initial contents, header + one entry per input section. No strings. */
++ osec->header.sh_size = sizeof(*a_hdr) + loaded*sizeof(*a_sec);
+++ osec->contents = xmalloc(osec->header.sh_size);
+++ a_hdr = (struct kallsyms_header *) osec->contents;
++ memset(osec->contents, 0, osec->header.sh_size);
++ a_hdr->size = sizeof(*a_hdr);
++ a_hdr->sections = loaded;
++***************
++*** 275,282 ****
++ a_hdr->symbol_off +
++ a_hdr->symbols*a_hdr->symbol_size +
++ strings_size - strings_left;
++- a_hdr = (struct kallsyms_header *) osec->contents =
++- xrealloc(a_hdr, a_hdr->total_size);
++ p = (char *)a_hdr + a_hdr->symbol_off;
++ memcpy(p, symbols, a_hdr->symbols*a_hdr->symbol_size);
++ free(symbols);
++--- 275,282 ----
++ a_hdr->symbol_off +
++ a_hdr->symbols*a_hdr->symbol_size +
++ strings_size - strings_left;
+++ osec->contents = xrealloc(a_hdr, a_hdr->total_size);
+++ a_hdr = (struct kallsyms_header *) osec->contents;
++ p = (char *)a_hdr + a_hdr->symbol_off;
++ memcpy(p, symbols, a_hdr->symbols*a_hdr->symbol_size);
++ free(symbols);
+diff -urN ../tmp-orig/modutils-2.4.26/obj/obj_ppc.c ./obj/obj_ppc.c
+--- ../tmp-orig/modutils-2.4.26/obj/obj_ppc.c 2002-03-01 00:39:06.000000000 +0000
++++ ./obj/obj_ppc.c 2004-11-30 09:55:50.000000000 +0000
+@@ -255,7 +255,8 @@
+ archdata_sec->header.sh_size = 0;
+ sec = obj_find_section(f, "__ftr_fixup");
+ if (sec) {
+- ad = (struct archdata *) (archdata_sec->contents) = xmalloc(sizeof(*ad));
++ archdata_sec->contents = xmalloc(sizeof(*ad));
++ ad = (struct archdata *) (archdata_sec->contents);
+ memset(ad, 0, sizeof(*ad));
+ archdata_sec->header.sh_size = sizeof(*ad);
+ ad->__start___ftr_fixup = sec->header.sh_addr;
diff --git a/sys-apps/module-init-tools/module-init-tools-3.1.ebuild b/sys-apps/module-init-tools/module-init-tools-3.1.ebuild
index 0acfdc538e4a..6dcfa555651f 100644
--- a/sys-apps/module-init-tools/module-init-tools-3.1.ebuild
+++ b/sys-apps/module-init-tools/module-init-tools-3.1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2005 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/module-init-tools-3.1.ebuild,v 1.7 2005/02/17 02:27:53 solar Exp $
+# $Header: /var/cvsroot/gentoo-x86/sys-apps/module-init-tools/module-init-tools-3.1.ebuild,v 1.8 2005/02/18 20:03:14 chainsaw Exp $
inherit flag-o-matic eutils gnuconfig toolchain-funcs
@@ -41,6 +41,7 @@ src_unpack() {
epatch ${FILESDIR}/modutils-2.4.22-no-above-below.patch
epatch ${FILESDIR}/modutils-2.4.27-PATH_MAX.patch
epatch ${FILESDIR}/modutils-2.4.27-gcc34.patch
+ epatch ${FILESDIR}/modutils-2.4.27-gcc4.patch
# fi
# Support legacy .o modules