All of lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH] package/libzenoh-c: add GLIBC and aarch64, x86_64 and arm dependencies
@ 2024-06-04  7:43 Michel Alex
  2024-06-04  7:56 ` Yann E. MORIN
  0 siblings, 1 reply; 2+ messages in thread
From: Michel Alex @ 2024-06-04  7:43 UTC (permalink / raw)
  To: buildroot@buildroot.org; +Cc: Michel Alex

The manual of zenoh-c says that:

zenoh-c only have support for following targets:
aarch64-unknown-linux-gnu, x86_64-unknown-linux-gnu, arm-unknown-linux-gnueabi

This patch provides a blind option BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS,
which is default y for above architectures. Additionally adds a dependency on
GLIBC because one of the autobuilders had a problem with MUSL. Moved also the
BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS from package's dependency
list to the BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS option.

Fixes:
http://autobuild.buildroot.net/results/680f25769526e5eef43d254a10a525b165846c75
http://autobuild.buildroot.net/results/31ed69cb2ffe8e9bc13a27c3fda16c27e9855b56
http://autobuild.buildroot.net/results/fdc74b8a42388b51cc4197c38b552559b97cbb8c
http://autobuild.buildroot.net/results/6e7ad53d44b417f6aa62acd8b2396720f5a14e82
http://autobuild.buildroot.net/results/c85927b1dd25a84981adc5cc537eb07d02da40bc
http://autobuild.buildroot.net/results/5389ac0174791b3d899fda7769b4f0f2dfeb805b
http://autobuild.buildroot.net/results/285bd8f5aa338dbaf9ac0e5f78593b10bd54cbb5

Signed-off-by: Alex Michel <alex.michel@wiedemann-group.com>
---
 package/libzenoh-c/Config.in | 13 ++++++++++++-
 1 file changed, 12 insertions(+), 1 deletion(-)

diff --git a/package/libzenoh-c/Config.in b/package/libzenoh-c/Config.in
index d22807c047..06e56c0879 100644
--- a/package/libzenoh-c/Config.in
+++ b/package/libzenoh-c/Config.in
@@ -1,6 +1,17 @@
+config BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS
+	bool
+	default y if BR2_aarch64
+	default y if BR2_arm
+	default y if BR2_x86_64
+	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
+	depends on BR2_TOOLCHAIN_USES_GLIBC
+
+comment "libzenoh-c needs a glibc toolchain and supports only aarch64, x86_64 and arm architectures"
+	depends on !BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS
+
 config BR2_PACKAGE_LIBZENOH_C
 	bool "libzenoh-c"
-	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
+	depends on BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS
 	select BR2_PACKAGE_HOST_RUSTC
 	help
 	  This package provides a C binding based on the main
-- 
2.34.1

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [Buildroot] [PATCH] package/libzenoh-c: add GLIBC and aarch64, x86_64 and arm dependencies
  2024-06-04  7:43 [Buildroot] [PATCH] package/libzenoh-c: add GLIBC and aarch64, x86_64 and arm dependencies Michel Alex
@ 2024-06-04  7:56 ` Yann E. MORIN
  0 siblings, 0 replies; 2+ messages in thread
From: Yann E. MORIN @ 2024-06-04  7:56 UTC (permalink / raw)
  To: Michel Alex; +Cc: buildroot@buildroot.org

Michel, All,

On 2024-06-04 07:43 +0000, Michel Alex spake thusly:
> zenoh-c only have support for following targets:
> aarch64-unknown-linux-gnu, x86_64-unknown-linux-gnu, arm-unknown-linux-gnueabi
[--SNIP--]
> diff --git a/package/libzenoh-c/Config.in b/package/libzenoh-c/Config.in
> index d22807c047..06e56c0879 100644
> --- a/package/libzenoh-c/Config.in
> +++ b/package/libzenoh-c/Config.in
> @@ -1,6 +1,17 @@
> +config BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS
> +	bool
> +	default y if BR2_aarch64
> +	default y if BR2_arm
> +	default y if BR2_x86_64
> +	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
> +	depends on BR2_TOOLCHAIN_USES_GLIBC

The dependency on the C library should not be in the _ARCH_SUPPORTS
symbol. Indeed, the architecture is something the user can't changem
it's what it is, but the C library is software, so the user has the
option to choose.

So, when the architecture is not supported, there is no reason to show
the main symbol, and there is no reason to show the comment either. But
when the architecture is supported, we want to tell the user the have
the option of changing the C library to use that package. That's why in
my quickly shipped code snippet in my previous mail, the dependency on
the C library was not added to _ARCH_SUPPORTS, but to the main symbol
and, as an inverted test, to the comment.

Can you fix and respin, please?

Regards,
Yann E. MORIN.

> +comment "libzenoh-c needs a glibc toolchain and supports only aarch64, x86_64 and arm architectures"
> +	depends on !BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS
> +
>  config BR2_PACKAGE_LIBZENOH_C
>  	bool "libzenoh-c"
> -	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
> +	depends on BR2_PACKAGE_LIBZENOH_C_ARCH_SUPPORTS
>  	select BR2_PACKAGE_HOST_RUSTC
>  	help
>  	  This package provides a C binding based on the main
> -- 
> 2.34.1
> 
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot

-- 
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 561 099 427 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2024-06-04  7:57 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-04  7:43 [Buildroot] [PATCH] package/libzenoh-c: add GLIBC and aarch64, x86_64 and arm dependencies Michel Alex
2024-06-04  7:56 ` Yann E. MORIN

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.