

Now that sparc64 is using gcc-3.x we can disallow gcc-2.91, etc.

Documentation/Changes already says 2.95.3, which is working fine for me.

With this change, we no longer require that per-cpu data definitions be
initialised.  That was a workaround for a bug in older gccs.  So remove the
build infrastructure which was checking for that.

Also, mention that nfs-utils-1.0.3 is required.  It isn't required yet, but
will be once we enable larger dev_t: there is an interface for exportfs which
passes dev_t's into the kernel which breaks with larger dev_t.  That
interface is old, deprecated and is not used in nfs-utils-1.0.3.


 /dev/null                     |   19 -------------------
 25-akpm/Documentation/Changes |    1 +
 25-akpm/Makefile              |    8 --------
 25-akpm/init/main.c           |    2 +-
 4 files changed, 2 insertions(+), 28 deletions(-)

diff -puN init/main.c~gcc-295-required init/main.c
--- 25/init/main.c~gcc-295-required	Fri Apr  4 17:00:52 2003
+++ 25-akpm/init/main.c	Fri Apr  4 17:01:32 2003
@@ -60,7 +60,7 @@
  * To avoid associated bogus bug reports, we flatly refuse to compile
  * with a gcc that is known to be too old from the very beginning.
  */
-#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 91)
+#if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 95)
 #error Sorry, your GCC is too old. It builds incorrect kernels.
 #endif
 
diff -puN Documentation/Changes~gcc-295-required Documentation/Changes
--- 25/Documentation/Changes~gcc-295-required	Fri Apr  4 17:02:13 2003
+++ 25-akpm/Documentation/Changes	Fri Apr  4 17:04:01 2003
@@ -62,6 +62,7 @@ o  PPP                    2.4.0         
 o  isdn4k-utils           3.1pre1                 # isdnctrl 2>&1|grep version
 o  procps                 2.0.9                   # ps --version
 o  oprofile               0.5                     # oprofiled --version
+o  nfs-utils              1.0.3                   # showmount --version
 
 Kernel compilation
 ==================
diff -puN -L scripts/per-cpu-check.awk scripts/per-cpu-check.awk~gcc-295-required /dev/null
--- 25/scripts/per-cpu-check.awk
+++ /dev/null	Thu Apr 11 07:25:15 2002
@@ -1,19 +0,0 @@
-/ __per_cpu_start$$/ {
-	IN_PER_CPU=1
-}
-
-/ __per_cpu_end$$/ {
-	IN_PER_CPU=0
-}
-
-/__per_cpu$$/ && ! ( / __ksymtab_/ || / __kstrtab_/ || / __kcrctab_/ || / __crc_/ ) {
-	if (!IN_PER_CPU) {
-		print $$3 " not in per-cpu section" > "/dev/stderr";
-		FOUND=1;
-	}
-}
-
-END {
-	exit FOUND;
-}
-
diff -puN Makefile~gcc-295-required Makefile
--- 25/Makefile~gcc-295-required	Fri Apr  4 17:06:20 2003
+++ 25-akpm/Makefile	Fri Apr  4 17:06:55 2003
@@ -342,17 +342,9 @@ define rule_vmlinux__
 	echo 'cmd_$@ := $(cmd_vmlinux__)' > $(@D)/.$(@F).cmd
 endef
 
-ifdef CONFIG_SMP
-#	Final awk script makes sure per-cpu vars are in per-cpu section, as
-#	old gcc (eg egcs 2.92.11) ignores section attribute if uninitialized.
-
-check_per_cpu =	$(AWK) -f $(srctree)/scripts/per-cpu-check.awk < System.map
-endif
-
 define rule_vmlinux
 	$(rule_vmlinux__)
 	$(NM) $@ | grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | sort > System.map
-	$(check_per_cpu)
 endef
 
 LDFLAGS_vmlinux += -T arch/$(ARCH)/vmlinux.lds.s

_
