From bfbb770243190c15cd4223c14b92aae15ebb9198 Mon Sep 17 00:00:00 2001 From: Jan Tulak Date: Tue, 18 Aug 2015 17:53:17 +1000 Subject: [PATCH] xfsprogs: prevent LIST_ macros conflicts BSD 4.4 added some LIST_ macros into system header files, which causes "macro redefined" warnings. To ensure we use our own macros, undefine the system ones at first. The conflicting macros are LIST_HEAD and LIST_HEAD_INIT Signed-off-by: Jan Tulak Reviewed-by: Christoph Hellwig Signed-off-by: Dave Chinner --- include/list.h | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/include/list.h b/include/list.h index 3f087a47c..f92faed89 100644 --- a/include/list.h +++ b/include/list.h @@ -18,6 +18,20 @@ #ifndef __LIST_H__ #define __LIST_H__ +/* + * This undef is here because BSD 4.4 added some LIST_ macros into system + * header file sys/queue.h. This header is included in many other system + * headers and thus causes "macro redefined" warnings. + * + * As OS X is kind of a derivate of BSD, this affects OS X too. + * + * To use our own LIST_ macros (copied from kernel code), we have to + * at first undefine the conflicting system macros. + * + */ +#undef LIST_HEAD +#undef LIST_HEAD_INIT + /* * Simple, generic doubly-linked list implementation. */ -- 2.47.2