[PATCH v2 1/4] xfsprogs: Prefix LIST_... macros to XFS_LIST_...

Jan Tulak jtulak at redhat.com
Mon Aug 3 04:34:48 CDT 2015



----- Original Message -----
> From: "Dave Chinner" <david at fromorbit.com>
> What macros, and how do we get them included in the build? I
> shouldn't need to go and use google to work out why a change is
> beign made....
> 
> > 
> > 
> > 
> 
> This is supposed to match what is required for libxfs/ so we don't
> have to modify the kernel code we bring across. Without knowing
> exactly how we are including conflicting definitions from the OS X
> include files, it's really hard to suggest other possible
> solutions...
> 

Ahh, sorry, I already wrote a reply to Chris, but it looks like 
I pressed "save" instead "send" - I found it in drafts and not 
in send emails. /shy

I will edit the commit message appropriately when resubmitting.

The conflicting macros are LIST_HEAD and LIST_HEAD_INIT.

Here is the reply I didn't sent:

----- Original Message -----
> From: "Christoph Hellwig" <hch at infradead.org>
> 
> Can you post the compiler warnings you see without this patch?
> 

Sure, these:

../include/xfs/list.h:32:9: warning: 'LIST_HEAD' macro redefined [-Wmacro-redefined]
#define LIST_HEAD(name) \
        ^
/usr/include/sys/queue.h:417:9: note: previous definition is here
#define LIST_HEAD(name, type)                                           \
        ^
(and the same for LIST_HEAD_INIT)

sys/queue.h is not linked directly, but from many system libraries. 
A quick grep on /usr/include/ shows 24 header files including the queue,
sys/mount.h one of them. And I didn't found a way how to avoid it.

If you have an idea what else to to with it, I'm happy to try it.

Cheers,
Jan

-- 
Jan Tulak
jtulak at redhat.com



More information about the xfs mailing list