[PATCH 1/5] Disallow building with gcc < 3.4

From: H. Peter Anvin
Date: Mon Sep 13 2010 - 16:15:28 EST


Disallow building the generic kernel code with gcc < 3.4. Earlier
versions of gcc have known problems, and it appears that anyone who
genuinely needs gcc 3.x can use gcc 3.4 at this point.

Signed-off-by: H. Peter Anvin <hpa@xxxxxxxxxxxxxxx>
---
Documentation/Changes | 2 +-
include/linux/compiler-gcc3.h | 15 +--------------
2 files changed, 2 insertions(+), 15 deletions(-)

diff --git a/Documentation/Changes b/Documentation/Changes
index 4fb88f1..0ea8040 100644
--- a/Documentation/Changes
+++ b/Documentation/Changes
@@ -28,7 +28,7 @@ necessary on all systems; obviously, if you don't have any ISDN
hardware, for example, you probably needn't concern yourself with
isdn4k-utils.

-o Gnu C 3.2 # gcc --version
+o Gnu C 3.4 # gcc --version
o Gnu make 3.80 # make --version
o binutils 2.12 # ld -v
o util-linux 2.10o # fdformat --version
diff --git a/include/linux/compiler-gcc3.h b/include/linux/compiler-gcc3.h
index b721129..c11d443 100644
--- a/include/linux/compiler-gcc3.h
+++ b/include/linux/compiler-gcc3.h
@@ -2,25 +2,12 @@
#error "Please don't include <linux/compiler-gcc3.h> directly, include <linux/compiler.h> instead."
#endif

-#if __GNUC_MINOR__ < 2
+#if __GNUC_MINOR__ < 4
# error Sorry, your compiler is too old - please upgrade it.
#endif

-#if __GNUC_MINOR__ >= 3
# define __used __attribute__((__used__))
-#else
-# define __used __attribute__((__unused__))
-#endif
-
-#if __GNUC_MINOR__ >= 4
#define __must_check __attribute__((warn_unused_result))
-#endif
-
-#ifdef CONFIG_GCOV_KERNEL
-# if __GNUC_MINOR__ < 4
-# error "GCOV profiling support for gcc versions below 3.4 not included"
-# endif /* __GNUC_MINOR__ */
-#endif /* CONFIG_GCOV_KERNEL */

/*
* A trick to suppress uninitialized variable warning without generating any
--
1.7.2.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/