diff options
Diffstat (limited to 'debian/patches/fix-warnings0001-Avoid-re-defining-macros.patch')
| -rw-r--r-- | debian/patches/fix-warnings0001-Avoid-re-defining-macros.patch | 78 |
1 files changed, 78 insertions, 0 deletions
diff --git a/debian/patches/fix-warnings0001-Avoid-re-defining-macros.patch b/debian/patches/fix-warnings0001-Avoid-re-defining-macros.patch new file mode 100644 index 0000000..c19a24a --- /dev/null +++ b/debian/patches/fix-warnings0001-Avoid-re-defining-macros.patch @@ -0,0 +1,78 @@ +From 2cdb55a93f5dbf032fab0102758c40b08dc9dab8 Mon Sep 17 00:00:00 2001 +From: Justus Winter <4winter@informatik.uni-hamburg.de> +Date: Sat, 15 Aug 2015 11:53:01 +0200 +Subject: [PATCH gnumach 1/3] Avoid re-defining macros + +* kern/macros.h: Avoid re-defining macros. +* linux/src/include/linux/compiler-gcc.h: Likewise. +* linux/src/include/linux/compiler.h: Likewise. +--- + kern/macros.h | 8 ++++++++ + linux/src/include/linux/compiler-gcc.h | 2 ++ + linux/src/include/linux/compiler.h | 8 ++++++-- + 3 files changed, 16 insertions(+), 2 deletions(-) + +diff --git a/kern/macros.h b/kern/macros.h +index fb8dc5e..7cc579d 100644 +--- a/kern/macros.h ++++ b/kern/macros.h +@@ -54,15 +54,23 @@ + + #define alignof(x) __alignof__(x) + ++#ifndef likely + #define likely(expr) __builtin_expect(!!(expr), 1) ++#endif /* likely */ ++#ifndef unlikely + #define unlikely(expr) __builtin_expect(!!(expr), 0) ++#endif /* unlikely */ + ++#ifndef barrier + #define barrier() asm volatile("" : : : "memory") ++#endif /* barrier */ + + #define __noreturn __attribute__((noreturn)) + #define __aligned(x) __attribute__((aligned(x))) + #define __always_inline inline __attribute__((always_inline)) ++#ifndef __section + #define __section(x) __attribute__((section(x))) ++#endif /* __section */ + #define __packed __attribute__((packed)) + #define __alias(x) __attribute__((alias(x))) + +diff --git a/linux/src/include/linux/compiler-gcc.h b/linux/src/include/linux/compiler-gcc.h +index 59e4028..b1a0be0 100644 +--- a/linux/src/include/linux/compiler-gcc.h ++++ b/linux/src/include/linux/compiler-gcc.h +@@ -9,7 +9,9 @@ + + /* Optimization barrier */ + /* The "volatile" is due to gcc bugs */ ++#ifndef barrier + #define barrier() __asm__ __volatile__("": : :"memory") ++#endif /* barrier */ + + /* + * This macro obfuscates arithmetic on a variable address so that gcc +diff --git a/linux/src/include/linux/compiler.h b/linux/src/include/linux/compiler.h +index 320d6c9..eb3dd94 100644 +--- a/linux/src/include/linux/compiler.h ++++ b/linux/src/include/linux/compiler.h +@@ -143,8 +143,12 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect); + #endif /* CONFIG_PROFILE_ALL_BRANCHES */ + + #else +-# define likely(x) __builtin_expect(!!(x), 1) +-# define unlikely(x) __builtin_expect(!!(x), 0) ++# ifndef likely ++# define likely(x) __builtin_expect(!!(x), 1) ++# endif /* likely */ ++# ifndef unlikely ++# define unlikely(x) __builtin_expect(!!(x), 0) ++# endif /* unlikely */ + #endif + + /* Optimization barrier */ +-- +2.1.4 + |
