[PATCH 2/4] Don't define away __attribute__ on gcc
- From
- Andi Kleen <andi@firstfloor.org>
- Date
- Jul 8, 2014, 06:35 UTC
- Message-ID
- <1404801311-15365-3-git-send-email-andi@firstfloor.org>
- In-Reply-To
- <1404801311-15365-1-git-send-email-andi@firstfloor.org>
From: Andi Kleen <ak@linux.intel.com>
Profile feedback sets -DNO_NORETURN, which causes the compat header file to go into a default #else block. That #else block defines away __attribute__(). Doing so causes all kinds of problems with the Linux and gcc system headers: in particular it makes the xmmintrin.h headers error out, breaking the build.
Don't define away __attribute__ when __GNUC__ is set.
Signed-off-by: Andi Kleen <ak@linux.intel.com> --- git-compat-util.h | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/git-compat-util.h b/git-compat-util.h index 96f5554..01e8695 100644 --- a/git-compat-util.h +++ b/git-compat-util.h @@ -291,10 +291,12 @@ extern char *gitbasename(char *); #else #define NORETURN #define NORETURN_PTR +#ifndef __GNUC__ #ifndef __attribute__ #define __attribute__(x) #endif #endif +#endif /* The sentinel attribute is valid from gcc version 4.0 */ #if defined(__GNUC__) && (__GNUC__ >= 4)
-- 2.0.1