diff options
-rw-r--r-- | sys/sys/cdefs.h | 2 | ||||
-rw-r--r-- | sys/sys/linker_set.h | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/sys/sys/cdefs.h b/sys/sys/cdefs.h index 5d275db..abb38e6 100644 --- a/sys/sys/cdefs.h +++ b/sys/sys/cdefs.h @@ -213,7 +213,9 @@ #define __packed #define __aligned(x) #define __section(x) +#define __weak #else +#define __weak __attribute__((__weak__)) #if !__GNUC_PREREQ__(2, 5) && !defined(__INTEL_COMPILER) #define __dead2 #define __pure2 diff --git a/sys/sys/linker_set.h b/sys/sys/linker_set.h index 2edb55b..4fa663d 100644 --- a/sys/sys/linker_set.h +++ b/sys/sys/linker_set.h @@ -68,9 +68,9 @@ /* * Initialize before referring to a given linker set. */ -#define SET_DECLARE(set, ptype) \ - extern ptype *__CONCAT(__start_set_,set); \ - extern ptype *__CONCAT(__stop_set_,set) +#define SET_DECLARE(set, ptype) \ + extern ptype __weak *__CONCAT(__start_set_,set); \ + extern ptype __weak *__CONCAT(__stop_set_,set) #define SET_BEGIN(set) \ (&__CONCAT(__start_set_,set)) |