[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20160521185232.GA26774@lakka.kapsi.fi>
Date: Sat, 21 May 2016 21:52:32 +0300
From: Mikko Rapeli <mikko.rapeli@....fi>
To: Nicolas Dichtel <nicolas.dichtel@...nd.com>
Cc: davem@...emloft.net, netdev@...r.kernel.org,
Jan Engelhardt <jengelh@...i.de>,
Josh Boyer <jwboyer@...oraproject.org>,
Stephen Hemminger <shemming@...cade.com>,
Waldemar Brodkorb <mail@...demar-brodkorb.de>,
Gabriel Laskar <gabriel@....epita.fr>
Subject: Re: [PATCH net] uapi glibc compat: fix compilation when !__USE_MISC
in glibc
On Thu, May 19, 2016 at 05:26:29PM +0200, Nicolas Dichtel wrote:
> These structures are defined only if __USE_MISC is set in glibc net/if.h
> headers, ie when _BSD_SOURCE or _SVID_SOURCE are defined.
Also, reading /usr/include/features.h from Debian glibc 2.22-4:
...
The `-ansi' switch to the GNU C compiler, and standards conformance
options such as `-std=c99', define __STRICT_ANSI__. If none of
these are defined, or if _DEFAULT_SOURCE is defined, the default is
to have _POSIX_SOURCE set to one and _POSIX_C_SOURCE set to
200809L, as well as enabling miscellaneous functions from BSD and
SVID. If more than one of these are defined, they accumulate. For
example __STRICT_ANSI__, _POSIX_SOURCE and _POSIX_C_SOURCE together
give you ISO C, 1003.1, and 1003.2, but nothing else.
...
/* _BSD_SOURCE and _SVID_SOURCE are deprecated aliases for
_DEFAULT_SOURCE.
...
In the compile test I go with the defaults. I guess I should test all
of these feature variants and in the future check deeper into the glibc
ifdefs.
> CC: Jan Engelhardt <jengelh@...i.de>
> CC: Josh Boyer <jwboyer@...oraproject.org>
> CC: Stephen Hemminger <shemming@...cade.com>
> CC: Waldemar Brodkorb <mail@...demar-brodkorb.de>
> CC: Gabriel Laskar <gabriel@....epita.fr>
> CC: Mikko Rapeli <mikko.rapeli@....fi>
> Fixes: 4a91cb61bb99 ("uapi glibc compat: fix compile errors when glibc net/if.h included before linux/if.h")
> Signed-off-by: Nicolas Dichtel <nicolas.dichtel@...nd.com>
Signed-off-by: Mikko Rapeli <mikko.rapeli@....fi>
> ---
> include/uapi/linux/libc-compat.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/uapi/linux/libc-compat.h b/include/uapi/linux/libc-compat.h
> index d5e38c73377c..e4f048ee7043 100644
> --- a/include/uapi/linux/libc-compat.h
> +++ b/include/uapi/linux/libc-compat.h
> @@ -52,7 +52,7 @@
> #if defined(__GLIBC__)
>
> /* Coordinate with glibc net/if.h header. */
> -#if defined(_NET_IF_H)
> +#if defined(_NET_IF_H) && defined(__USE_MISC)
>
> /* GLIBC headers included first so don't define anything
> * that would already be defined. */
> --
> 2.8.1
>
Powered by blists - more mailing lists