Khem already merged this, so I'll send v2 with just SRCREV bump shortly.

On Thu, Aug 17, 2023 at 11:10 AM Martin Jansa via lists.openembedded.org
<[email protected]> wrote:

> Older glibc on host might be missing __glibc_has_attribute added in
> glibc-2.34 with:
>
>
> https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=misc/sys/cdefs.h;h=8e244a77cf6271f09cbd26d18b1e07b1d1641404;hp=57ca262bdfb642bf4a945645532f2319ec1ff437;hb=c8ba52ab3350c334d6e34b1439a4c0c1431351f3;hpb=7dd416491e080456fc7742d884c520526509413e
>
> Fixes:
> In file included from ../git/localedef/include/programs/xmalloc.h:21,
>                  from glibc/locale/programs/localedef.h:124,
>                  from glibc/locale/programs/localedef.c:36:
> ../git/localedef/include/sys/cdefs.h:85:51: error: missing binary operator
> before token "("
>    85 | #if __GNUC_PREREQ (4, 3) || __glibc_has_attribute (__cold__)
>       |                                                   ^
>
> Signed-off-by: Martin Jansa <[email protected]>
> ---
>  .../glibc/cross-localedef-native_2.38.bb      |  1 +
>  ...cdefs.h-define-__glibc_has_attribute.patch | 51 +++++++++++++++++++
>  2 files changed, 52 insertions(+)
>  create mode 100644
> meta/recipes-core/glibc/glibc/0003-localedef-cdefs.h-define-__glibc_has_attribute.patch
>
> diff --git a/meta/recipes-core/glibc/cross-localedef-native_2.38.bb
> b/meta/recipes-core/glibc/cross-localedef-native_2.38.bb
> index e7261a644b..673008c57a 100644
> --- a/meta/recipes-core/glibc/cross-localedef-native_2.38.bb
> +++ b/meta/recipes-core/glibc/cross-localedef-native_2.38.bb
> @@ -24,6 +24,7 @@ SRC_URI =
> "${GLIBC_GIT_URI};branch=${SRCBRANCH};name=glibc \
>             \
>
> file://0001-localedef-Add-hardlink-resolver-from-util-linux.patch \
>
> file://0002-localedef-fix-ups-hardlink-to-make-it-compile.patch \
> +
>  
> file://0003-localedef-cdefs.h-define-__glibc_has_attribute.patch;patchdir=localedef
> \
>             \
>
> file://0010-eglibc-Cross-building-and-testing-instructions.patch \
>             file://0011-eglibc-Help-bootstrap-cross-toolchain.patch \
> diff --git
> a/meta/recipes-core/glibc/glibc/0003-localedef-cdefs.h-define-__glibc_has_attribute.patch
> b/meta/recipes-core/glibc/glibc/0003-localedef-cdefs.h-define-__glibc_has_attribute.patch
> new file mode 100644
> index 0000000000..d34651e275
> --- /dev/null
> +++
> b/meta/recipes-core/glibc/glibc/0003-localedef-cdefs.h-define-__glibc_has_attribute.patch
> @@ -0,0 +1,51 @@
> +From a90ba625410f8b49205adbe03652bc2fd0c35cec Mon Sep 17 00:00:00 2001
> +From: Martin Jansa <[email protected]>
> +Date: Thu, 17 Aug 2023 01:23:59 +0200
> +Subject: [PATCH] cdefs.h: define __glibc_has_attribute
> +
> +Older glibc on host might be missing __glibc_has_attribute added in
> glibc-2.34 with:
> +
> +
> https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=misc/sys/cdefs.h;h=8e244a77cf6271f09cbd26d18b1e07b1d1641404;hp=57ca262bdfb642bf4a945645532f2319ec1ff437;hb=c8ba52ab3350c334d6e34b1439a4c0c1431351f3;hpb=7dd416491e080456fc7742d884c520526509413e
> +
> +Fixes:
> +In file included from ../git/localedef/include/programs/xmalloc.h:21,
> +                 from glibc/locale/programs/localedef.h:124,
> +                 from glibc/locale/programs/localedef.c:36:
> +../git/localedef/include/sys/cdefs.h:85:51: error: missing binary
> operator before token "("
> +   85 | #if __GNUC_PREREQ (4, 3) || __glibc_has_attribute (__cold__)
> +      |                                                   ^
> +
> +Signed-off-by: Martin Jansa <[email protected]>
> +Upstream-Status: Submitted [https://github.com/kraj/localedef/pull/4]
> +---
> + include/sys/cdefs.h | 17 +++++++++++++++++
> + 1 file changed, 17 insertions(+)
> +
> +diff --git a/include/sys/cdefs.h b/include/sys/cdefs.h
> +index 0f32fdb..8530054 100644
> +--- a/include/sys/cdefs.h
> ++++ b/include/sys/cdefs.h
> +@@ -37,6 +37,23 @@
> + #endif
> + #endif
> +
> ++#if !defined __glibc_has_attribute
> ++/* Older glibc on host might be missing __glibc_has_attribute added in
> glibc-2.34 with:
> ++
> https://sourceware.org/git/?p=glibc.git;a=blobdiff;f=misc/sys/cdefs.h;h=8e244a77cf6271f09cbd26d18b1e07b1d1641404;hp=57ca262bdfb642bf4a945645532f2319ec1ff437;hb=c8ba52ab3350c334d6e34b1439a4c0c1431351f3;hpb=7dd416491e080456fc7742d884c520526509413e
> ++*/
> ++/* Compilers that lack __has_attribute may object to
> ++       #if defined __has_attribute && __has_attribute (...)
> ++   even though they do not need to evaluate the right-hand side of the
> &&.
> ++   Similarly for __has_builtin, etc.  */
> ++#if (defined __has_attribute \
> ++     && (!defined __clang_minor__ \
> ++         || 3 < __clang_major__ + (5 <= __clang_minor__)))
> ++# define __glibc_has_attribute(attr) __has_attribute (attr)
> ++#else
> ++# define __glibc_has_attribute(attr) 0
> ++#endif
> ++#endif
> ++
> + #if !defined(__REDIRECT_NTH) && defined(__GNUC__) && __GNUC__ >= 2
> + # ifdef __cplusplus
> + #  define __REDIRECT_NTH(name, proto, alias) \
> --
> 2.41.0
>
>
> 
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#186329): 
https://lists.openembedded.org/g/openembedded-core/message/186329
Mute This Topic: https://lists.openembedded.org/mt/100796990/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to