[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Aug 13, 2013 at 11:13:29PM +0800, Hangbin Liu wrote:
 > On some old distros, we use sa_family_t in linux/irda.h and linux/netlink.h
 > first, but include the header file bits/sockaddr.h later in compat.h. Then it
 > will compile failed with error: expected specifier-qualifier-list before
 > ‘sa_family_t’. So let's move compat.h before irda.h and netlink.h
 > 
 >
 > diff --git a/net/irda_setsockopt.c b/net/irda_setsockopt.c
 > index a5d96ec..21ff649 100644
 > --- a/net/irda_setsockopt.c
 > +++ b/net/irda_setsockopt.c
 > @@ -1,9 +1,9 @@
 >  #include <stdlib.h>
 > -#include <linux/irda.h>
 >  #include "net.h"
 >  #include "maps.h"	// page_rand
 >  #include "compat.h"
 >  #include "trinity.h"	// ARRAY_SIZE
 > +#include <linux/irda.h>
 >  
 >  #define NR_SOL_IRDA_OPTS ARRAY_SIZE(irda_opts)
 >  static const unsigned int irda_opts[] = {
 > diff --git a/net/netlink_setsockopt.c b/net/netlink_setsockopt.c
 > index c6e9297..c401047 100644
 > --- a/net/netlink_setsockopt.c
 > +++ b/net/netlink_setsockopt.c
 > @@ -1,9 +1,9 @@
 >  #include <stdlib.h>
 > -#include <linux/netlink.h>
 >  #include "net.h"
 >  #include "maps.h"	// page_rand
 >  #include "compat.h"
 >  #include "trinity.h"	// ARRAY_SIZE
 > +#include <linux/netlink.h>

This seems fragile to me.  The idea here is that compat.h is to override
all the system includes, so reordering like this may mean that we won't
get the desired affect on some other distro.

I don't have a better answer for this though, need to think about it some more.
Perhaps changing compat.h to include something other than the bits/sockaddr
(Or adding additional includes there)..

What distribution was this ?

	Dave
--
To unsubscribe from this list: send the line "unsubscribe trinity" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux SCSI]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux