[Buildroot] [PATCH RESEND] package/mkpasswd: define _DEFAULT_SOURCE to suppress compiler warning
Arnout Vandecappelle
arnout at mind.be
Sun Dec 5 15:59:44 UTC 2021
On 24/11/2021 19:05, Markus Mayer via buildroot wrote:
> We define _DEFAULT_SOURCE in mkpasswd.c to suppress a compiler warning.
>
> In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
> from /usr/include/stdio.h:27,
> from [...]/buildroot/output/arm64/build/host-mkpasswd/mkpasswd.c:24:
> /usr/include/features.h:187:3:
> 187 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use _DEFAULT_SOURCE"
> | ^~~~~~~
>
> As per GLIBC 2.20 release notes[1]:
>
> The _BSD_SOURCE and _SVID_SOURCE feature test macros are no longer
> supported; they now act the same as _DEFAULT_SOURCE (but generate a
> warning). Except for cases where _BSD_SOURCE enabled BSD interfaces
> that conflicted with POSIX (support for which was removed in 2.19),
> the interfaces those macros enabled remain available when compiling
> with _GNU_SOURCE defined, with _DEFAULT_SOURCE defined, or without
> any feature test macros defined.
>
> [1] https://lwn.net/Articles/611162/
>
> Signed-off-by: Markus Mayer <mmayer at broadcom.com>
Applied to master, thanks.
> ---
>
> Originally sent about a month ago:
> https://lists.buildroot.org/pipermail/buildroot/2021-October/627062.html
You can slightly accelerate this by putting a fixes tag in the commit message.
E.g. you could have written:
The _BSD_SOURCE macro is deprecated in glibc 2.20. Use _DEFAULT_SOURCE. Keep
_BSD_SOURCE for compatibility with older glibc.
[... the rest of your explanation ...]
Fixes:
In file included from /usr/include/x86_64-linux-gnu/bits/libc-header-start.h:33,
from /usr/include/stdio.h:27,
from
[...]/buildroot/output/arm64/build/host-mkpasswd/mkpasswd.c:24:
/usr/include/features.h:187:3:
187 | # warning "_BSD_SOURCE and _SVID_SOURCE are deprecated, use
_DEFAULT_SOURCE"
| ^~~~~~~
Anyway, I left the commit message as is.
Regards,
Arnout
>
> Would you mind pulling this in for 2021.11?
>
> Thanks.
>
> package/mkpasswd/mkpasswd.c | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/package/mkpasswd/mkpasswd.c b/package/mkpasswd/mkpasswd.c
> index fd16230468a4..ae8594061cf6 100644
> --- a/package/mkpasswd/mkpasswd.c
> +++ b/package/mkpasswd/mkpasswd.c
> @@ -18,6 +18,11 @@
>
> /* for crypt, snprintf and strcasecmp */
> #define _XOPEN_SOURCE
> +/*
> + * _BSD_SOURCE is deprecated as of GLIBC 2.20; _DEFAULT_SOURCE should be used
> + * instead. (https://lwn.net/Articles/611162/)
> + */
> +#define _DEFAULT_SOURCE
> #define _BSD_SOURCE
>
> /* System library */
>
More information about the buildroot
mailing list