* [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
@ 2022-03-29 18:50 Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 2/4] package/libdispatch: add libdispatch package Alsey Coleman Miller
` (3 more replies)
0 siblings, 4 replies; 11+ messages in thread
From: Alsey Coleman Miller @ 2022-03-29 18:50 UTC (permalink / raw)
To: buildroot; +Cc: Alsey Miller, Samuel Martin
Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
---
package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
index 3b1db35fb6..9b36ee2b47 100644
--- a/package/pkg-cmake.mk
+++ b/package/pkg-cmake.mk
@@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
$(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
$(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
-
+$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
$(2)_BUILDDIR = $$($(2)_SRCDIR)
@@ -82,6 +82,7 @@ ifeq ($(4),target)
# documented as a standard CMake variable. If a package supports it,
# it must handle it explicitly.
#
+ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
define $(2)_CONFIGURE_CMDS
(mkdir -p $$($$(PKG)_BUILDDIR) && \
cd $$($$(PKG)_BUILDDIR) && \
@@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
)
endef
else
+define $(2)_CONFIGURE_CMDS
+ (mkdir -p $$($$(PKG)_BUILDDIR) && \
+ cd $$($$(PKG)_BUILDDIR) && \
+ rm -f CMakeCache.txt && \
+ PATH=$$(BR_PATH) \
+ $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
+ -DCMAKE_INSTALL_PREFIX="/usr" \
+ -DCMAKE_COLOR_MAKEFILE=OFF \
+ -DBUILD_DOC=OFF \
+ -DBUILD_DOCS=OFF \
+ -DBUILD_EXAMPLE=OFF \
+ -DBUILD_EXAMPLES=OFF \
+ -DBUILD_TEST=OFF \
+ -DBUILD_TESTS=OFF \
+ -DBUILD_TESTING=OFF \
+ -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
+ $$(CMAKE_QUIET) \
+ $$($$(PKG)_CONF_OPTS) \
+ )
+endef
+endif
+else
# Configure package for host
define $(2)_CONFIGURE_CMDS
--
2.35.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [Buildroot] [PATCH 2/4] package/libdispatch: add libdispatch package
2022-03-29 18:50 [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Coleman Miller
@ 2022-03-29 18:50 ` Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 3/4] package/libdispatch: add fix for 32-bit arm Alsey Coleman Miller
` (2 subsequent siblings)
3 siblings, 0 replies; 11+ messages in thread
From: Alsey Coleman Miller @ 2022-03-29 18:50 UTC (permalink / raw)
To: buildroot; +Cc: Alsey Miller, Samuel Martin
Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
---
package/Config.in | 1 +
package/libdispatch/Config.in | 43 ++++++++++++++++++++++
package/libdispatch/libdispatch.hash | 1 +
package/libdispatch/libdispatch.mk | 53 ++++++++++++++++++++++++++++
4 files changed, 98 insertions(+)
create mode 100644 package/libdispatch/Config.in
create mode 100644 package/libdispatch/libdispatch.hash
create mode 100644 package/libdispatch/libdispatch.mk
diff --git a/package/Config.in b/package/Config.in
index 0d5d763180..e217ff5282 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1968,6 +1968,7 @@ menu "Other"
source "package/libcrossguid/Config.in"
source "package/libcsv/Config.in"
source "package/libdaemon/Config.in"
+ source "package/libdispatch/Config.in"
source "package/libeastl/Config.in"
source "package/libee/Config.in"
source "package/libev/Config.in"
diff --git a/package/libdispatch/Config.in b/package/libdispatch/Config.in
new file mode 100644
index 0000000000..f4fa5e47fb
--- /dev/null
+++ b/package/libdispatch/Config.in
@@ -0,0 +1,43 @@
+config BR2_PACKAGE_LIBDISPATCH_ARCH_SUPPORTS
+ bool
+ default y if BR2_x86_64
+ default y if BR2_aarch64
+ default y if BR2_arm
+ default y if BR2_powerpc
+ default y if BR2_mips
+ default y if BR2_mipsel
+ default y if BR2_mips64
+ default y if BR2_mips64el
+ default y if BR2_RISCV_64
+
+config BR2_PACKAGE_LIBDISPATCH_TARGET_ARCH
+ string
+ default "aarch64" if BR2_aarch64
+ default "armv5" if BR2_ARM_CPU_ARMV5
+ default "armv6" if BR2_ARM_CPU_ARMV6
+ default "armv7" if BR2_ARM_CPU_ARMV7A
+ default "x86_64" if BR2_x86_64
+ default "powerpc" if BR2_powerpc
+ default "mips" if BR2_mips
+ default "mipsel" if BR2_mipsel
+ default "mips64" if BR2_mips64
+ default "mips64el" if BR2_mips64el
+ default "riscv64" if BR2_RISCV_64
+
+config BR2_PACKAGE_LIBDISPATCH
+ bool "libdispatch"
+ depends on BR2_PACKAGE_LIBDISPATCH_ARCH_SUPPORTS
+ depends on BR2_TOOLCHAIN_HAS_THREADS
+ depends on !BR2_STATIC_LIBS
+ depends on BR2_TOOLCHAIN_USES_GLIBC
+ select BR2_PACKAGE_LIBBSD
+
+ help
+ Grand Central Dispatch (GCD or libdispatch) provides comprehensive support for concurrent code execution on multicore hardware.
+
+ http://swift.org
+
+comment "libdispatch needs a toolchain w/ Glibc, wchar, threads, C++, dynamic library"
+ depends on BR2_PACKAGE_LIBDISPATCH_ARCH_SUPPORTS
+ depends on !BR2_TOOLCHAIN_USES_GLIBC || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_INSTALL_LIBSTDCPP \
+ || BR2_STATIC_LIBS || !BR2_USE_WCHAR
\ No newline at end of file
diff --git a/package/libdispatch/libdispatch.hash b/package/libdispatch/libdispatch.hash
new file mode 100644
index 0000000000..64543b56eb
--- /dev/null
+++ b/package/libdispatch/libdispatch.hash
@@ -0,0 +1 @@
+sha256 d2bbfb5b98d129caa2c6bd7662c850bf57cb434572d09844b56641c4558906ab libdispatch-swift-5.6-RELEASE.tar.gz
diff --git a/package/libdispatch/libdispatch.mk b/package/libdispatch/libdispatch.mk
new file mode 100644
index 0000000000..a3b441ba36
--- /dev/null
+++ b/package/libdispatch/libdispatch.mk
@@ -0,0 +1,53 @@
+### Grand Central Dispatch
+LIBDISPATCH_VERSION = 5.6
+LIBDISPATCH_SITE = $(call github,apple,swift-corelibs-libdispatch,swift-$(LIBDISPATCH_VERSION)-RELEASE)
+LIBDISPATCH_LICENSE = Apache-2.0
+LIBDISPATCH_LICENSE_FILES = LICENSE
+LIBDISPATCH_INSTALL_STAGING = YES
+LIBDISPATCH_SUPPORTS_IN_SOURCE_BUILD = NO
+LIBDISPATCH_SUPPORTS_CMAKE_TOOLCHAIN = NO
+LIBDISPATCH_DEPENDENCIES = host-clang host-lld libbsd
+
+LIBDISPATCH_TARGET_ARCH = $(call qstrip,$(BR2_PACKAGE_LIBDISPATCH_TARGET_ARCH))
+LIBDISPATCH_CLANG_PATH = $(HOST_DIR)/bin
+
+ifeq ($(LIBDISPATCH_TARGET_ARCH),armv7)
+LIBDISPATCH_TARGET_NAME = armv7-unknown-linux-gnueabihf
+else ifeq ($(LIBDISPATCH_TARGET_ARCH),armv6)
+LIBDISPATCH_TARGET_NAME = armv6-unknown-linux-gnueabihf
+else ifeq ($(LIBDISPATCH_TARGET_ARCH),armv5)
+LIBDISPATCH_TARGET_NAME = armv5-unknown-linux-gnueabi
+else
+LIBDISPATCH_TARGET_NAME = $(LIBDISPATCH_TARGET_ARCH)-unknown-linux-gnu
+endif
+
+ifeq ($(LIBDISPATCH_TARGET_ARCH),armv5)
+LIBDISPATCH_EXTRA_FLAGS = -march=armv5te
+else ifeq ($(LIBDISPATCH_TARGET_ARCH),riscv64)
+LIBDISPATCH_EXTRA_FLAGS = -mno-relax -mabi=lp64 -march=rv64imac -mfloat-abi=soft
+else ifeq ($(LIBDISPATCH_TARGET_ARCH),mipsel)
+LIBDISPATCH_EXTRA_FLAGS = -msoft-float
+else ifeq ($(LIBDISPATCH_TARGET_ARCH),mips64el)
+LIBDISPATCH_EXTRA_FLAGS = -msoft-float
+else ifeq ($(LIBDISPATCH_TARGET_ARCH),powerpc)
+LIBDISPATCH_EXTRA_FLAGS = -mcpu=7400
+else
+LIBDISPATCH_EXTRA_FLAGS =
+endif
+
+LIBDISPATCH_CONF_OPTS += \
+ -DLibRT_LIBRARIES="${STAGING_DIR}/usr/lib/librt.a" \
+ -DCMAKE_C_COMPILER=$(LIBDISPATCH_CLANG_PATH)/clang \
+ -DCMAKE_CXX_COMPILER=$(LIBDISPATCH_CLANG_PATH)/clang++ \
+ -DCMAKE_C_FLAGS="-w -fuse-ld=lld $(LIBDISPATCH_EXTRA_FLAGS) -target $(LIBDISPATCH_TARGET_NAME) --sysroot=$(STAGING_DIR) -I$(STAGING_DIR)/usr/include -B$(STAGING_DIR)/usr/lib -B$(HOST_DIR)/lib/gcc/$(GNU_TARGET_NAME)/$(call qstrip,$(BR2_GCC_VERSION)) -L$(HOST_DIR)/lib/gcc/$(GNU_TARGET_NAME)/$(call qstrip,$(BR2_GCC_VERSION))" \
+ -DCMAKE_C_LINK_FLAGS="-target $(LIBDISPATCH_TARGET_NAME) --sysroot=$(STAGING_DIR)" \
+ -DCMAKE_CXX_FLAGS="-w -fuse-ld=lld $(LIBDISPATCH_EXTRA_FLAGS) -target $(LIBDISPATCH_TARGET_NAME) --sysroot=$(STAGING_DIR) -I$(STAGING_DIR)/usr/include -I$(HOST_DIR)/$(GNU_TARGET_NAME)/include/c++/$(call qstrip,$(BR2_GCC_VERSION))/ -I$(HOST_DIR)/$(GNU_TARGET_NAME)/include/c++/$(call qstrip,$(BR2_GCC_VERSION))/$(GNU_TARGET_NAME) -B$(STAGING_DIR)/usr/lib -B$(HOST_DIR)/lib/gcc/$(GNU_TARGET_NAME)/$(call qstrip,$(BR2_GCC_VERSION)) -L$(HOST_DIR)/lib/gcc/$(GNU_TARGET_NAME)/$(call qstrip,$(BR2_GCC_VERSION))" \
+ -DCMAKE_CXX_LINK_FLAGS="-target $(LIBDISPATCH_TARGET_NAME) --sysroot=$(STAGING_DIR)" \
+
+define LIBDISPATCH_INSTALL_TARGET_CMDS
+ (cd $(LIBDISPATCH_BUILDDIR) && \
+ cp ./*.so $(TARGET_DIR)/usr/lib/ \
+ )
+endef
+
+$(eval $(cmake-package))
--
2.35.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [Buildroot] [PATCH 3/4] package/libdispatch: add fix for 32-bit arm
2022-03-29 18:50 [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 2/4] package/libdispatch: add libdispatch package Alsey Coleman Miller
@ 2022-03-29 18:50 ` Alsey Coleman Miller
2023-02-06 11:26 ` Arnout Vandecappelle
2022-03-29 18:50 ` [Buildroot] [PATCH 4/4] DEVELOPERS: add Alsey Miller for libdispatch Alsey Coleman Miller
2022-03-29 19:17 ` [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Miller
3 siblings, 1 reply; 11+ messages in thread
From: Alsey Coleman Miller @ 2022-03-29 18:50 UTC (permalink / raw)
To: buildroot; +Cc: Alsey Miller, Samuel Martin
Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
---
package/libdispatch/arm-yield.patch | 13 +++++++++++++
1 file changed, 13 insertions(+)
create mode 100644 package/libdispatch/arm-yield.patch
diff --git a/package/libdispatch/arm-yield.patch b/package/libdispatch/arm-yield.patch
new file mode 100644
index 0000000000..fa7cf7cce4
--- /dev/null
+++ b/package/libdispatch/arm-yield.patch
@@ -0,0 +1,13 @@
+diff --git a/src/shims/yield.c b/src/shims/yield.c
+index 43f0017..d0c5fff 100644
+--- a/src/shims/yield.c
++++ b/src/shims/yield.c
+@@ -36,7 +36,7 @@ void *
+ _dispatch_wait_for_enqueuer(void **ptr)
+ {
+ #if !DISPATCH_HW_CONFIG_UP
+-#if defined(__arm__) || defined(__arm64__)
++#if (defined(__arm__) && defined(__APPLE__)) || defined(__arm64__)
+ int spins = DISPATCH_WAIT_SPINS_WFE;
+ void *value;
+ while (unlikely(spins-- > 0)) {
--
2.35.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 11+ messages in thread
* [Buildroot] [PATCH 4/4] DEVELOPERS: add Alsey Miller for libdispatch
2022-03-29 18:50 [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 2/4] package/libdispatch: add libdispatch package Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 3/4] package/libdispatch: add fix for 32-bit arm Alsey Coleman Miller
@ 2022-03-29 18:50 ` Alsey Coleman Miller
2022-03-29 19:17 ` [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Miller
3 siblings, 0 replies; 11+ messages in thread
From: Alsey Coleman Miller @ 2022-03-29 18:50 UTC (permalink / raw)
To: buildroot; +Cc: Alsey Miller, Samuel Martin
Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
---
DEVELOPERS | 3 +++
1 file changed, 3 insertions(+)
diff --git a/DEVELOPERS b/DEVELOPERS
index a66b9d7eee..555ec0175b 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -122,6 +122,9 @@ F: boot/opensbi/
F: configs/hifive_unleashed_defconfig
F: package/xen/
+N: Alsey Miller <alseycmiller@gmail.com>
+F: package/libdispatch/
+
N: Alvaro G. M <alvaro.gamez@hazent.com>
F: package/dcron/
F: package/libxmlrpc/
--
2.35.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
2022-03-29 18:50 [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Coleman Miller
` (2 preceding siblings ...)
2022-03-29 18:50 ` [Buildroot] [PATCH 4/4] DEVELOPERS: add Alsey Miller for libdispatch Alsey Coleman Miller
@ 2022-03-29 19:17 ` Alsey Miller
2022-03-29 19:26 ` James Hilliard
3 siblings, 1 reply; 11+ messages in thread
From: Alsey Miller @ 2022-03-29 19:17 UTC (permalink / raw)
To: buildroot; +Cc: s.martin49
This change is necessary because if you specify the toolchain it will always use the GCC toolchain and C flags instead of the Clang cross compiler and custom C flags. This is not an issue for host packages, only for target.
> On Mar 29, 2022, at 11:50 AM, Alsey Coleman Miller <alseycmiller@gmail.com> wrote:
>
> Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
> ---
> package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
> 1 file changed, 24 insertions(+), 1 deletion(-)
>
> diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
> index 3b1db35fb6..9b36ee2b47 100644
> --- a/package/pkg-cmake.mk
> +++ b/package/pkg-cmake.mk
> @@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
> $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
>
> $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
> -
> +$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
>
> ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
> $(2)_BUILDDIR = $$($(2)_SRCDIR)
> @@ -82,6 +82,7 @@ ifeq ($(4),target)
> # documented as a standard CMake variable. If a package supports it,
> # it must handle it explicitly.
> #
> +ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
> define $(2)_CONFIGURE_CMDS
> (mkdir -p $$($$(PKG)_BUILDDIR) && \
> cd $$($$(PKG)_BUILDDIR) && \
> @@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
> )
> endef
> else
> +define $(2)_CONFIGURE_CMDS
> + (mkdir -p $$($$(PKG)_BUILDDIR) && \
> + cd $$($$(PKG)_BUILDDIR) && \
> + rm -f CMakeCache.txt && \
> + PATH=$$(BR_PATH) \
> + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
> + -DCMAKE_INSTALL_PREFIX="/usr" \
> + -DCMAKE_COLOR_MAKEFILE=OFF \
> + -DBUILD_DOC=OFF \
> + -DBUILD_DOCS=OFF \
> + -DBUILD_EXAMPLE=OFF \
> + -DBUILD_EXAMPLES=OFF \
> + -DBUILD_TEST=OFF \
> + -DBUILD_TESTS=OFF \
> + -DBUILD_TESTING=OFF \
> + -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
> + $$(CMAKE_QUIET) \
> + $$($$(PKG)_CONF_OPTS) \
> + )
> +endef
> +endif
> +else
>
> # Configure package for host
> define $(2)_CONFIGURE_CMDS
> --
> 2.35.1
>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
2022-03-29 19:17 ` [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Miller
@ 2022-03-29 19:26 ` James Hilliard
2022-03-29 19:58 ` Alsey Miller
0 siblings, 1 reply; 11+ messages in thread
From: James Hilliard @ 2022-03-29 19:26 UTC (permalink / raw)
To: Alsey Miller; +Cc: Samuel Martin, buildroot
On Tue, Mar 29, 2022 at 1:18 PM Alsey Miller <alseycmiller@gmail.com> wrote:
>
> This change is necessary because if you specify the toolchain it will always use the GCC toolchain and C flags instead of the Clang cross compiler and custom C flags. This is not an issue for host packages, only for target.
I think this is probably a better way of dealing with the issue:
https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-5-james.hilliard1@gmail.com/
>
> > On Mar 29, 2022, at 11:50 AM, Alsey Coleman Miller <alseycmiller@gmail.com> wrote:
> >
> > Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
> > ---
> > package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
> > 1 file changed, 24 insertions(+), 1 deletion(-)
> >
> > diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
> > index 3b1db35fb6..9b36ee2b47 100644
> > --- a/package/pkg-cmake.mk
> > +++ b/package/pkg-cmake.mk
> > @@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
> > $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
> >
> > $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
> > -
> > +$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
> >
> > ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
> > $(2)_BUILDDIR = $$($(2)_SRCDIR)
> > @@ -82,6 +82,7 @@ ifeq ($(4),target)
> > # documented as a standard CMake variable. If a package supports it,
> > # it must handle it explicitly.
> > #
> > +ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
> > define $(2)_CONFIGURE_CMDS
> > (mkdir -p $$($$(PKG)_BUILDDIR) && \
> > cd $$($$(PKG)_BUILDDIR) && \
> > @@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
> > )
> > endef
> > else
> > +define $(2)_CONFIGURE_CMDS
> > + (mkdir -p $$($$(PKG)_BUILDDIR) && \
> > + cd $$($$(PKG)_BUILDDIR) && \
> > + rm -f CMakeCache.txt && \
> > + PATH=$$(BR_PATH) \
> > + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
> > + -DCMAKE_INSTALL_PREFIX="/usr" \
> > + -DCMAKE_COLOR_MAKEFILE=OFF \
> > + -DBUILD_DOC=OFF \
> > + -DBUILD_DOCS=OFF \
> > + -DBUILD_EXAMPLE=OFF \
> > + -DBUILD_EXAMPLES=OFF \
> > + -DBUILD_TEST=OFF \
> > + -DBUILD_TESTS=OFF \
> > + -DBUILD_TESTING=OFF \
> > + -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
> > + $$(CMAKE_QUIET) \
> > + $$($$(PKG)_CONF_OPTS) \
> > + )
> > +endef
> > +endif
> > +else
> >
> > # Configure package for host
> > define $(2)_CONFIGURE_CMDS
> > --
> > 2.35.1
> >
>
> _______________________________________________
> buildroot mailing list
> buildroot@buildroot.org
> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
2022-03-29 19:26 ` James Hilliard
@ 2022-03-29 19:58 ` Alsey Miller
2022-03-29 20:10 ` James Hilliard
0 siblings, 1 reply; 11+ messages in thread
From: Alsey Miller @ 2022-03-29 19:58 UTC (permalink / raw)
To: James Hilliard; +Cc: Samuel Martin, buildroot
That commit is not merged and only seems to override the C flags. How can we force cmake to use Clang for target packages? I would be fine with basing my work that patch if support for using Clang and as the C and C++ compiler is added.
> On Mar 29, 2022, at 12:26 PM, James Hilliard <james.hilliard1@gmail.com> wrote:
>
> On Tue, Mar 29, 2022 at 1:18 PM Alsey Miller <alseycmiller@gmail.com> wrote:
>>
>> This change is necessary because if you specify the toolchain it will always use the GCC toolchain and C flags instead of the Clang cross compiler and custom C flags. This is not an issue for host packages, only for target.
>
> I think this is probably a better way of dealing with the issue:
> https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-5-james.hilliard1@gmail.com/
>
>>
>>> On Mar 29, 2022, at 11:50 AM, Alsey Coleman Miller <alseycmiller@gmail.com> wrote:
>>>
>>> Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
>>> ---
>>> package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
>>> 1 file changed, 24 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
>>> index 3b1db35fb6..9b36ee2b47 100644
>>> --- a/package/pkg-cmake.mk
>>> +++ b/package/pkg-cmake.mk
>>> @@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
>>> $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
>>>
>>> $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
>>> -
>>> +$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
>>>
>>> ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
>>> $(2)_BUILDDIR = $$($(2)_SRCDIR)
>>> @@ -82,6 +82,7 @@ ifeq ($(4),target)
>>> # documented as a standard CMake variable. If a package supports it,
>>> # it must handle it explicitly.
>>> #
>>> +ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
>>> define $(2)_CONFIGURE_CMDS
>>> (mkdir -p $$($$(PKG)_BUILDDIR) && \
>>> cd $$($$(PKG)_BUILDDIR) && \
>>> @@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
>>> )
>>> endef
>>> else
>>> +define $(2)_CONFIGURE_CMDS
>>> + (mkdir -p $$($$(PKG)_BUILDDIR) && \
>>> + cd $$($$(PKG)_BUILDDIR) && \
>>> + rm -f CMakeCache.txt && \
>>> + PATH=$$(BR_PATH) \
>>> + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
>>> + -DCMAKE_INSTALL_PREFIX="/usr" \
>>> + -DCMAKE_COLOR_MAKEFILE=OFF \
>>> + -DBUILD_DOC=OFF \
>>> + -DBUILD_DOCS=OFF \
>>> + -DBUILD_EXAMPLE=OFF \
>>> + -DBUILD_EXAMPLES=OFF \
>>> + -DBUILD_TEST=OFF \
>>> + -DBUILD_TESTS=OFF \
>>> + -DBUILD_TESTING=OFF \
>>> + -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
>>> + $$(CMAKE_QUIET) \
>>> + $$($$(PKG)_CONF_OPTS) \
>>> + )
>>> +endef
>>> +endif
>>> +else
>>>
>>> # Configure package for host
>>> define $(2)_CONFIGURE_CMDS
>>> --
>>> 2.35.1
>>>
>>
>> _______________________________________________
>> buildroot mailing list
>> buildroot@buildroot.org
>> https://lists.buildroot.org/mailman/listinfo/buildroot
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
2022-03-29 19:58 ` Alsey Miller
@ 2022-03-29 20:10 ` James Hilliard
2022-03-29 23:19 ` Alsey Miller
0 siblings, 1 reply; 11+ messages in thread
From: James Hilliard @ 2022-03-29 20:10 UTC (permalink / raw)
To: Alsey Miller; +Cc: Samuel Martin, buildroot
On Tue, Mar 29, 2022 at 1:58 PM Alsey Miller <alseycmiller@gmail.com> wrote:
>
> That commit is not merged and only seems to override the C flags. How can we force cmake to use Clang for target packages? I would be fine with basing my work that patch if support for using Clang and as the C and C++ compiler is added.
It should allow overriding any of the toolchain variables like this:
https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-6-james.hilliard1@gmail.com/
I think this will pretty much work as is with your libdispatch patch:
https://patchwork.ozlabs.org/project/buildroot/patch/20220329185059.943889-2-alseycmiller@gmail.com/
It should allow you to drop this part:
LIBDISPATCH_SUPPORTS_CMAKE_TOOLCHAIN = NO
You might also be able to drop some of the other conf opts since the toolchain
file can then still be used with partial overrides.
>
> > On Mar 29, 2022, at 12:26 PM, James Hilliard <james.hilliard1@gmail.com> wrote:
> >
> > On Tue, Mar 29, 2022 at 1:18 PM Alsey Miller <alseycmiller@gmail.com> wrote:
> >>
> >> This change is necessary because if you specify the toolchain it will always use the GCC toolchain and C flags instead of the Clang cross compiler and custom C flags. This is not an issue for host packages, only for target.
> >
> > I think this is probably a better way of dealing with the issue:
> > https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-5-james.hilliard1@gmail.com/
> >
> >>
> >>> On Mar 29, 2022, at 11:50 AM, Alsey Coleman Miller <alseycmiller@gmail.com> wrote:
> >>>
> >>> Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
> >>> ---
> >>> package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
> >>> 1 file changed, 24 insertions(+), 1 deletion(-)
> >>>
> >>> diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
> >>> index 3b1db35fb6..9b36ee2b47 100644
> >>> --- a/package/pkg-cmake.mk
> >>> +++ b/package/pkg-cmake.mk
> >>> @@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
> >>> $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
> >>>
> >>> $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
> >>> -
> >>> +$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
> >>>
> >>> ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
> >>> $(2)_BUILDDIR = $$($(2)_SRCDIR)
> >>> @@ -82,6 +82,7 @@ ifeq ($(4),target)
> >>> # documented as a standard CMake variable. If a package supports it,
> >>> # it must handle it explicitly.
> >>> #
> >>> +ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
> >>> define $(2)_CONFIGURE_CMDS
> >>> (mkdir -p $$($$(PKG)_BUILDDIR) && \
> >>> cd $$($$(PKG)_BUILDDIR) && \
> >>> @@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
> >>> )
> >>> endef
> >>> else
> >>> +define $(2)_CONFIGURE_CMDS
> >>> + (mkdir -p $$($$(PKG)_BUILDDIR) && \
> >>> + cd $$($$(PKG)_BUILDDIR) && \
> >>> + rm -f CMakeCache.txt && \
> >>> + PATH=$$(BR_PATH) \
> >>> + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
> >>> + -DCMAKE_INSTALL_PREFIX="/usr" \
> >>> + -DCMAKE_COLOR_MAKEFILE=OFF \
> >>> + -DBUILD_DOC=OFF \
> >>> + -DBUILD_DOCS=OFF \
> >>> + -DBUILD_EXAMPLE=OFF \
> >>> + -DBUILD_EXAMPLES=OFF \
> >>> + -DBUILD_TEST=OFF \
> >>> + -DBUILD_TESTS=OFF \
> >>> + -DBUILD_TESTING=OFF \
> >>> + -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
> >>> + $$(CMAKE_QUIET) \
> >>> + $$($$(PKG)_CONF_OPTS) \
> >>> + )
> >>> +endef
> >>> +endif
> >>> +else
> >>>
> >>> # Configure package for host
> >>> define $(2)_CONFIGURE_CMDS
> >>> --
> >>> 2.35.1
> >>>
> >>
> >> _______________________________________________
> >> buildroot mailing list
> >> buildroot@buildroot.org
> >> https://lists.buildroot.org/mailman/listinfo/buildroot
>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
2022-03-29 20:10 ` James Hilliard
@ 2022-03-29 23:19 ` Alsey Miller
2022-06-20 23:14 ` James Hilliard
0 siblings, 1 reply; 11+ messages in thread
From: Alsey Miller @ 2022-03-29 23:19 UTC (permalink / raw)
To: James Hilliard; +Cc: Samuel Martin, buildroot
I’ve submitted a new series of patches that I’ve tested with your patch. So the `LIBDISPATCH_SUPPORTS_CMAKE_TOOLCHAIN` line is remove and all `pkg-cmake` changes.
> On Mar 29, 2022, at 1:10 PM, James Hilliard <james.hilliard1@gmail.com> wrote:
>
> On Tue, Mar 29, 2022 at 1:58 PM Alsey Miller <alseycmiller@gmail.com> wrote:
>>
>> That commit is not merged and only seems to override the C flags. How can we force cmake to use Clang for target packages? I would be fine with basing my work that patch if support for using Clang and as the C and C++ compiler is added.
>
> It should allow overriding any of the toolchain variables like this:
> https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-6-james.hilliard1@gmail.com/
>
> I think this will pretty much work as is with your libdispatch patch:
> https://patchwork.ozlabs.org/project/buildroot/patch/20220329185059.943889-2-alseycmiller@gmail.com/
>
> It should allow you to drop this part:
> LIBDISPATCH_SUPPORTS_CMAKE_TOOLCHAIN = NO
>
> You might also be able to drop some of the other conf opts since the toolchain
> file can then still be used with partial overrides.
>
>>
>>> On Mar 29, 2022, at 12:26 PM, James Hilliard <james.hilliard1@gmail.com> wrote:
>>>
>>> On Tue, Mar 29, 2022 at 1:18 PM Alsey Miller <alseycmiller@gmail.com> wrote:
>>>>
>>>> This change is necessary because if you specify the toolchain it will always use the GCC toolchain and C flags instead of the Clang cross compiler and custom C flags. This is not an issue for host packages, only for target.
>>>
>>> I think this is probably a better way of dealing with the issue:
>>> https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-5-james.hilliard1@gmail.com/
>>>
>>>>
>>>>> On Mar 29, 2022, at 11:50 AM, Alsey Coleman Miller <alseycmiller@gmail.com> wrote:
>>>>>
>>>>> Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
>>>>> ---
>>>>> package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
>>>>> 1 file changed, 24 insertions(+), 1 deletion(-)
>>>>>
>>>>> diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
>>>>> index 3b1db35fb6..9b36ee2b47 100644
>>>>> --- a/package/pkg-cmake.mk
>>>>> +++ b/package/pkg-cmake.mk
>>>>> @@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
>>>>> $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
>>>>>
>>>>> $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
>>>>> -
>>>>> +$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
>>>>>
>>>>> ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
>>>>> $(2)_BUILDDIR = $$($(2)_SRCDIR)
>>>>> @@ -82,6 +82,7 @@ ifeq ($(4),target)
>>>>> # documented as a standard CMake variable. If a package supports it,
>>>>> # it must handle it explicitly.
>>>>> #
>>>>> +ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
>>>>> define $(2)_CONFIGURE_CMDS
>>>>> (mkdir -p $$($$(PKG)_BUILDDIR) && \
>>>>> cd $$($$(PKG)_BUILDDIR) && \
>>>>> @@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
>>>>> )
>>>>> endef
>>>>> else
>>>>> +define $(2)_CONFIGURE_CMDS
>>>>> + (mkdir -p $$($$(PKG)_BUILDDIR) && \
>>>>> + cd $$($$(PKG)_BUILDDIR) && \
>>>>> + rm -f CMakeCache.txt && \
>>>>> + PATH=$$(BR_PATH) \
>>>>> + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
>>>>> + -DCMAKE_INSTALL_PREFIX="/usr" \
>>>>> + -DCMAKE_COLOR_MAKEFILE=OFF \
>>>>> + -DBUILD_DOC=OFF \
>>>>> + -DBUILD_DOCS=OFF \
>>>>> + -DBUILD_EXAMPLE=OFF \
>>>>> + -DBUILD_EXAMPLES=OFF \
>>>>> + -DBUILD_TEST=OFF \
>>>>> + -DBUILD_TESTS=OFF \
>>>>> + -DBUILD_TESTING=OFF \
>>>>> + -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
>>>>> + $$(CMAKE_QUIET) \
>>>>> + $$($$(PKG)_CONF_OPTS) \
>>>>> + )
>>>>> +endef
>>>>> +endif
>>>>> +else
>>>>>
>>>>> # Configure package for host
>>>>> define $(2)_CONFIGURE_CMDS
>>>>> --
>>>>> 2.35.1
>>>>>
>>>>
>>>> _______________________________________________
>>>> buildroot mailing list
>>>> buildroot@buildroot.org
>>>> https://lists.buildroot.org/mailman/listinfo/buildroot
>>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain
2022-03-29 23:19 ` Alsey Miller
@ 2022-06-20 23:14 ` James Hilliard
0 siblings, 0 replies; 11+ messages in thread
From: James Hilliard @ 2022-06-20 23:14 UTC (permalink / raw)
To: Alsey Miller; +Cc: Samuel Martin, buildroot
On Tue, Mar 29, 2022 at 5:19 PM Alsey Miller <alseycmiller@gmail.com> wrote:
>
> I’ve submitted a new series of patches that I’ve tested with your patch. So the `LIBDISPATCH_SUPPORTS_CMAKE_TOOLCHAIN` line is remove and all `pkg-cmake` changes.
FYI toolchain variable override support is now merged:
https://github.com/buildroot/buildroot/commit/56a27d7d00ea3a1851a46045bbc9472091412e76
>
> > On Mar 29, 2022, at 1:10 PM, James Hilliard <james.hilliard1@gmail.com> wrote:
> >
> > On Tue, Mar 29, 2022 at 1:58 PM Alsey Miller <alseycmiller@gmail.com> wrote:
> >>
> >> That commit is not merged and only seems to override the C flags. How can we force cmake to use Clang for target packages? I would be fine with basing my work that patch if support for using Clang and as the C and C++ compiler is added.
> >
> > It should allow overriding any of the toolchain variables like this:
> > https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-6-james.hilliard1@gmail.com/
> >
> > I think this will pretty much work as is with your libdispatch patch:
> > https://patchwork.ozlabs.org/project/buildroot/patch/20220329185059.943889-2-alseycmiller@gmail.com/
> >
> > It should allow you to drop this part:
> > LIBDISPATCH_SUPPORTS_CMAKE_TOOLCHAIN = NO
> >
> > You might also be able to drop some of the other conf opts since the toolchain
> > file can then still be used with partial overrides.
> >
> >>
> >>> On Mar 29, 2022, at 12:26 PM, James Hilliard <james.hilliard1@gmail.com> wrote:
> >>>
> >>> On Tue, Mar 29, 2022 at 1:18 PM Alsey Miller <alseycmiller@gmail.com> wrote:
> >>>>
> >>>> This change is necessary because if you specify the toolchain it will always use the GCC toolchain and C flags instead of the Clang cross compiler and custom C flags. This is not an issue for host packages, only for target.
> >>>
> >>> I think this is probably a better way of dealing with the issue:
> >>> https://patchwork.ozlabs.org/project/buildroot/patch/20220322232224.2842266-5-james.hilliard1@gmail.com/
> >>>
> >>>>
> >>>>> On Mar 29, 2022, at 11:50 AM, Alsey Coleman Miller <alseycmiller@gmail.com> wrote:
> >>>>>
> >>>>> Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
> >>>>> ---
> >>>>> package/pkg-cmake.mk | 25 ++++++++++++++++++++++++-
> >>>>> 1 file changed, 24 insertions(+), 1 deletion(-)
> >>>>>
> >>>>> diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
> >>>>> index 3b1db35fb6..9b36ee2b47 100644
> >>>>> --- a/package/pkg-cmake.mk
> >>>>> +++ b/package/pkg-cmake.mk
> >>>>> @@ -57,7 +57,7 @@ $(2)_INSTALL_STAGING_OPTS ?= DESTDIR=$$(STAGING_DIR) install/fast
> >>>>> $(2)_INSTALL_TARGET_OPTS ?= DESTDIR=$$(TARGET_DIR) install/fast
> >>>>>
> >>>>> $(3)_SUPPORTS_IN_SOURCE_BUILD ?= YES
> >>>>> -
> >>>>> +$(3)_SUPPORTS_CMAKE_TOOLCHAIN ?= YES
> >>>>>
> >>>>> ifeq ($$($(3)_SUPPORTS_IN_SOURCE_BUILD),YES)
> >>>>> $(2)_BUILDDIR = $$($(2)_SRCDIR)
> >>>>> @@ -82,6 +82,7 @@ ifeq ($(4),target)
> >>>>> # documented as a standard CMake variable. If a package supports it,
> >>>>> # it must handle it explicitly.
> >>>>> #
> >>>>> +ifeq ($(3)_SUPPORTS_CMAKE_TOOLCHAIN),YES)
> >>>>> define $(2)_CONFIGURE_CMDS
> >>>>> (mkdir -p $$($$(PKG)_BUILDDIR) && \
> >>>>> cd $$($$(PKG)_BUILDDIR) && \
> >>>>> @@ -104,6 +105,28 @@ define $(2)_CONFIGURE_CMDS
> >>>>> )
> >>>>> endef
> >>>>> else
> >>>>> +define $(2)_CONFIGURE_CMDS
> >>>>> + (mkdir -p $$($$(PKG)_BUILDDIR) && \
> >>>>> + cd $$($$(PKG)_BUILDDIR) && \
> >>>>> + rm -f CMakeCache.txt && \
> >>>>> + PATH=$$(BR_PATH) \
> >>>>> + $$($$(PKG)_CONF_ENV) $$(BR2_CMAKE) $$($$(PKG)_SRCDIR) \
> >>>>> + -DCMAKE_INSTALL_PREFIX="/usr" \
> >>>>> + -DCMAKE_COLOR_MAKEFILE=OFF \
> >>>>> + -DBUILD_DOC=OFF \
> >>>>> + -DBUILD_DOCS=OFF \
> >>>>> + -DBUILD_EXAMPLE=OFF \
> >>>>> + -DBUILD_EXAMPLES=OFF \
> >>>>> + -DBUILD_TEST=OFF \
> >>>>> + -DBUILD_TESTS=OFF \
> >>>>> + -DBUILD_TESTING=OFF \
> >>>>> + -DBUILD_SHARED_LIBS=$$(if $$(BR2_STATIC_LIBS),OFF,ON) \
> >>>>> + $$(CMAKE_QUIET) \
> >>>>> + $$($$(PKG)_CONF_OPTS) \
> >>>>> + )
> >>>>> +endef
> >>>>> +endif
> >>>>> +else
> >>>>>
> >>>>> # Configure package for host
> >>>>> define $(2)_CONFIGURE_CMDS
> >>>>> --
> >>>>> 2.35.1
> >>>>>
> >>>>
> >>>> _______________________________________________
> >>>> buildroot mailing list
> >>>> buildroot@buildroot.org
> >>>> https://lists.buildroot.org/mailman/listinfo/buildroot
> >>
>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
* Re: [Buildroot] [PATCH 3/4] package/libdispatch: add fix for 32-bit arm
2022-03-29 18:50 ` [Buildroot] [PATCH 3/4] package/libdispatch: add fix for 32-bit arm Alsey Coleman Miller
@ 2023-02-06 11:26 ` Arnout Vandecappelle
0 siblings, 0 replies; 11+ messages in thread
From: Arnout Vandecappelle @ 2023-02-06 11:26 UTC (permalink / raw)
To: Alsey Coleman Miller, buildroot
Hi Alsey,
This patch should be included in the first one.
On 29/03/2022 20:50, Alsey Coleman Miller wrote:
> Signed-off-by: Alsey Coleman Miller <alseycmiller@gmail.com>
> ---
> package/libdispatch/arm-yield.patch | 13 +++++++++++++
> 1 file changed, 13 insertions(+)
> create mode 100644 package/libdispatch/arm-yield.patch
>
> diff --git a/package/libdispatch/arm-yield.patch b/package/libdispatch/arm-yield.patch
> new file mode 100644
> index 0000000000..fa7cf7cce4
> --- /dev/null
> +++ b/package/libdispatch/arm-yield.patch
> @@ -0,0 +1,13 @@
Patches should be git formatted. They should have a full commit message that
explains the issue, and a Signed-off-by. There should also be an upstream
reference, or something like "Not applicable" and an explaantion why it's not
applicable for upstream.
Regards,
Arnout
> +diff --git a/src/shims/yield.c b/src/shims/yield.c
> +index 43f0017..d0c5fff 100644
> +--- a/src/shims/yield.c
> ++++ b/src/shims/yield.c
> +@@ -36,7 +36,7 @@ void *
> + _dispatch_wait_for_enqueuer(void **ptr)
> + {
> + #if !DISPATCH_HW_CONFIG_UP
> +-#if defined(__arm__) || defined(__arm64__)
> ++#if (defined(__arm__) && defined(__APPLE__)) || defined(__arm64__)
> + int spins = DISPATCH_WAIT_SPINS_WFE;
> + void *value;
> + while (unlikely(spins-- > 0)) {
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 11+ messages in thread
end of thread, other threads:[~2023-02-06 11:26 UTC | newest]
Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-29 18:50 [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 2/4] package/libdispatch: add libdispatch package Alsey Coleman Miller
2022-03-29 18:50 ` [Buildroot] [PATCH 3/4] package/libdispatch: add fix for 32-bit arm Alsey Coleman Miller
2023-02-06 11:26 ` Arnout Vandecappelle
2022-03-29 18:50 ` [Buildroot] [PATCH 4/4] DEVELOPERS: add Alsey Miller for libdispatch Alsey Coleman Miller
2022-03-29 19:17 ` [Buildroot] [PATCH 1/4] package/pkg-cmake: allow overriding toolchain Alsey Miller
2022-03-29 19:26 ` James Hilliard
2022-03-29 19:58 ` Alsey Miller
2022-03-29 20:10 ` James Hilliard
2022-03-29 23:19 ` Alsey Miller
2022-06-20 23:14 ` James Hilliard
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.