diff mbox series

[1/1] package/boost: enable context/coroutine for arm variants

Message ID 20220126082505.10253-1-pieter.degendt@gmail.com
State Accepted
Headers show
Series [1/1] package/boost: enable context/coroutine for arm variants | expand

Commit Message

Pieter De Gendt Jan. 26, 2022, 8:25 a.m. UTC
Add boost context support for aarch64/aarch64_be and select AAPCS
as ABI for all arm variants.

Signed-off-by: Pieter De Gendt <pieter.degendt@gmail.com>
---
 package/boost/Config.in | 1 +
 package/boost/boost.mk  | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

Comments

Arnout Vandecappelle Feb. 5, 2022, 10:54 p.m. UTC | #1
On 26/01/2022 09:25, Pieter De Gendt wrote:
> Add boost context support for aarch64/aarch64_be and select AAPCS
> as ABI for all arm variants.

  I've added an explanation _why_ the change to AAPCS (because ucontext only 
works with AAPCS ABI).

> 
> Signed-off-by: Pieter De Gendt <pieter.degendt@gmail.com>
> ---
>   package/boost/Config.in | 1 +
>   package/boost/boost.mk  | 2 +-
>   2 files changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/package/boost/Config.in b/package/boost/Config.in
> index 1c405a36c3..cc11b8f53e 100644
> --- a/package/boost/Config.in
> +++ b/package/boost/Config.in
> @@ -74,6 +74,7 @@ config BR2_PACKAGE_BOOST_CONTAINER
>   config BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS

  There's a comment just above this that refers to an outdated URL. I've updated 
that as well.

  Applied to master, thanks.

  Regards,
  Arnout

>   	bool
>   	default y if ((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM)
> +	default y if (BR2_aarch64 || BR2_aarch64_be)
>   	default y if BR2_i386
>   	default y if BR2_mips
>   	default y if BR2_mipsel
> diff --git a/package/boost/boost.mk b/package/boost/boost.mk
> index 2d2a8fb311..b6681b0ad3 100644
> --- a/package/boost/boost.mk
> +++ b/package/boost/boost.mk
> @@ -85,7 +85,7 @@ HOST_BOOST_OPTS += --no-cmake-config toolset=gcc threading=multi \
>   
>   ifeq ($(BR2_MIPS_OABI32),y)
>   BOOST_ABI = o32
> -else ifeq ($(BR2_arm),y)
> +else ifeq ($(BR2_arm)$(BR2_armeb)$(BR2_aarch64)$(BR2_aarch64_be),y)
>   BOOST_ABI = aapcs
>   else
>   BOOST_ABI = sysv
diff mbox series

Patch

diff --git a/package/boost/Config.in b/package/boost/Config.in
index 1c405a36c3..cc11b8f53e 100644
--- a/package/boost/Config.in
+++ b/package/boost/Config.in
@@ -74,6 +74,7 @@  config BR2_PACKAGE_BOOST_CONTAINER
 config BR2_PACKAGE_BOOST_CONTEXT_ARCH_SUPPORTS
 	bool
 	default y if ((BR2_arm || BR2_armeb) && BR2_ARM_CPU_HAS_ARM)
+	default y if (BR2_aarch64 || BR2_aarch64_be)
 	default y if BR2_i386
 	default y if BR2_mips
 	default y if BR2_mipsel
diff --git a/package/boost/boost.mk b/package/boost/boost.mk
index 2d2a8fb311..b6681b0ad3 100644
--- a/package/boost/boost.mk
+++ b/package/boost/boost.mk
@@ -85,7 +85,7 @@  HOST_BOOST_OPTS += --no-cmake-config toolset=gcc threading=multi \
 
 ifeq ($(BR2_MIPS_OABI32),y)
 BOOST_ABI = o32
-else ifeq ($(BR2_arm),y)
+else ifeq ($(BR2_arm)$(BR2_armeb)$(BR2_aarch64)$(BR2_aarch64_be),y)
 BOOST_ABI = aapcs
 else
 BOOST_ABI = sysv