* [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h)
@ 2021-01-03 20:19 Peter Seiderer
2021-01-03 20:19 ` [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic Peter Seiderer
2021-01-03 21:44 ` [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) Yann E. MORIN
0 siblings, 2 replies; 5+ messages in thread
From: Peter Seiderer @ 2021-01-03 20:19 UTC (permalink / raw)
To: buildroot
Fixes:
- http://autobuild.buildroot.net/results/c7882cc2d66984350f54d619f39cfee5065d941a
gcc -g -Wall -MMD -MF .obj/libregexp.host.o.d -Wno-array-bounds -Wno-format-truncation -D_GNU_SOURCE -DCONFIG_VERSION=\"2020-11-08\" -DCONFIG_BIGNUM -O2 -flto -c -o .obj/libregexp.host.o libregexp.c
quickjs.c:112:23: fatal error: stdatomic.h: No such file or directory
#include <stdatomic.h>
^
compilation terminated.
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
package/quickjs/Config.in | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/package/quickjs/Config.in b/package/quickjs/Config.in
index 886cbd4db6..5c3b068c3a 100644
--- a/package/quickjs/Config.in
+++ b/package/quickjs/Config.in
@@ -4,6 +4,7 @@ config BR2_PACKAGE_QUICKJS
# No way to check for fenv support.
depends on !BR2_TOOLCHAIN_USES_UCLIBC
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C11/stdatomic.h
+ depends on BR2_HOST_GCC_AT_LEAST_4_9 # C11/stdatomic.h
depends on BR2_USE_MMU # fork()
help
QuickJS is a small and embeddable Javascript engine.
@@ -12,6 +13,7 @@ config BR2_PACKAGE_QUICKJS
https://bellard.org/quickjs/
-comment "quickjs needs a glibc or musl toolchain w/ gcc >= 4.9, dynamic library"
+comment "quickjs needs a glibc or musl toolchain w/ gcc >= 4.9, host gcc >= 4.9, dynamic library"
depends on BR2_USE_MMU
- depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_UCLIBC || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
+ depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_UCLIBC || \
+ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_HOST_GCC_AT_LEAST_4_9
--
2.29.2
^ permalink raw reply related [flat|nested] 5+ messages in thread* [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic 2021-01-03 20:19 [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) Peter Seiderer @ 2021-01-03 20:19 ` Peter Seiderer 2021-01-03 21:45 ` Yann E. MORIN 2021-01-03 21:44 ` [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) Yann E. MORIN 1 sibling, 1 reply; 5+ messages in thread From: Peter Seiderer @ 2021-01-03 20:19 UTC (permalink / raw) To: buildroot Link with libatomic if available. Fixes: - http://autobuild.buildroot.net/results/e0766eef95a2559d51e58d1a81a9c40df84ae509 .../build/quickjs-2020-11-08/quickjs.c:12229: undefined reference to `__atomic_fetch_xor_1' Signed-off-by: Peter Seiderer <ps.report@gmx.net> --- ...ile-add-optional-link-with-libatomic.patch | 30 +++++++++++++++++++ package/quickjs/quickjs.mk | 6 +++- 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch diff --git a/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch b/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch new file mode 100644 index 0000000000..12f4eb2338 --- /dev/null +++ b/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch @@ -0,0 +1,30 @@ +From 2cf2aa34d5d55a4eedb1aedd4d56d89d24870230 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer <ps.report@gmx.net> +Date: Sun, 3 Jan 2021 21:11:44 +0100 +Subject: [PATCH] Makefile: add optional link with libatomic + +Add optional libatomic linking if available to fix: + + .../build/quickjs-2020-11-08/quickjs.c:12229: undefined reference to `__atomic_fetch_xor_1' + +Signed-off-by: Peter Seiderer <ps.report@gmx.net> +--- + Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/Makefile b/Makefile +index e6ae827..22ad496 100644 +--- a/Makefile ++++ b/Makefile +@@ -177,7 +177,7 @@ endif + HOST_LIBS=-lm -ldl -lpthread + LIBS=-lm + ifndef CONFIG_WIN32 +-LIBS+=-ldl -lpthread ++LIBS+=-ldl -lpthread $(LIBATOMIC) + endif + + $(OBJDIR): +-- +2.29.2 + diff --git a/package/quickjs/quickjs.mk b/package/quickjs/quickjs.mk index 1a2e63278f..389ed71133 100644 --- a/package/quickjs/quickjs.mk +++ b/package/quickjs/quickjs.mk @@ -10,8 +10,12 @@ QUICKJS_SITE = https://bellard.org/quickjs QUICKJS_LICENSE = MIT QUICKJS_INSTALL_STAGING = YES +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) +QUICKJS_LIBATOMIC += -latomic +endif + define QUICKJS_BUILD_CMDS - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ + $(TARGET_MAKE_ENV) LIBATOMIC=$(QUICKJS_LIBATOMIC) $(MAKE) -C $(@D) \ CROSS_PREFIX="$(TARGET_CROSS)" \ all endef -- 2.29.2 ^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic 2021-01-03 20:19 ` [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic Peter Seiderer @ 2021-01-03 21:45 ` Yann E. MORIN 2021-01-09 19:49 ` Peter Seiderer 0 siblings, 1 reply; 5+ messages in thread From: Yann E. MORIN @ 2021-01-03 21:45 UTC (permalink / raw) To: buildroot Peter, All, On 2021-01-03 21:19 +0100, Peter Seiderer spake thusly: > Link with libatomic if available. > > Fixes: > > - http://autobuild.buildroot.net/results/e0766eef95a2559d51e58d1a81a9c40df84ae509 > > .../build/quickjs-2020-11-08/quickjs.c:12229: undefined reference to `__atomic_fetch_xor_1' > > Signed-off-by: Peter Seiderer <ps.report@gmx.net> Applied to master, thanks. But see below for a small nit... > --- > ...ile-add-optional-link-with-libatomic.patch | 30 +++++++++++++++++++ > package/quickjs/quickjs.mk | 6 +++- > 2 files changed, 35 insertions(+), 1 deletion(-) > create mode 100644 package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch > > diff --git a/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch b/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch > new file mode 100644 > index 0000000000..12f4eb2338 > --- /dev/null > +++ b/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch > @@ -0,0 +1,30 @@ > +From 2cf2aa34d5d55a4eedb1aedd4d56d89d24870230 Mon Sep 17 00:00:00 2001 > +From: Peter Seiderer <ps.report@gmx.net> > +Date: Sun, 3 Jan 2021 21:11:44 +0100 > +Subject: [PATCH] Makefile: add optional link with libatomic > + > +Add optional libatomic linking if available to fix: > + > + .../build/quickjs-2020-11-08/quickjs.c:12229: undefined reference to `__atomic_fetch_xor_1' > + > +Signed-off-by: Peter Seiderer <ps.report@gmx.net> > +--- > + Makefile | 2 +- > + 1 file changed, 1 insertion(+), 1 deletion(-) > + > +diff --git a/Makefile b/Makefile > +index e6ae827..22ad496 100644 > +--- a/Makefile > ++++ b/Makefile > +@@ -177,7 +177,7 @@ endif > + HOST_LIBS=-lm -ldl -lpthread > + LIBS=-lm > + ifndef CONFIG_WIN32 > +-LIBS+=-ldl -lpthread > ++LIBS+=-ldl -lpthread $(LIBATOMIC) > + endif I've changed that to be a generic variable, not tied to -latomic: LIBS+=$(EXTRA_LIBS) Do not forget to send the patch upstream. ;-) Regards, Yann E. MORIN. > + $(OBJDIR): > +-- > +2.29.2 > + > diff --git a/package/quickjs/quickjs.mk b/package/quickjs/quickjs.mk > index 1a2e63278f..389ed71133 100644 > --- a/package/quickjs/quickjs.mk > +++ b/package/quickjs/quickjs.mk > @@ -10,8 +10,12 @@ QUICKJS_SITE = https://bellard.org/quickjs > QUICKJS_LICENSE = MIT > QUICKJS_INSTALL_STAGING = YES > > +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) > +QUICKJS_LIBATOMIC += -latomic > +endif > + > define QUICKJS_BUILD_CMDS > - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ > + $(TARGET_MAKE_ENV) LIBATOMIC=$(QUICKJS_LIBATOMIC) $(MAKE) -C $(@D) \ > CROSS_PREFIX="$(TARGET_CROSS)" \ > all > endef > -- > 2.29.2 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/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. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic 2021-01-03 21:45 ` Yann E. MORIN @ 2021-01-09 19:49 ` Peter Seiderer 0 siblings, 0 replies; 5+ messages in thread From: Peter Seiderer @ 2021-01-09 19:49 UTC (permalink / raw) To: buildroot Hello Yann, On Sun, 3 Jan 2021 22:45:50 +0100, "Yann E. MORIN" <yann.morin.1998@free.fr> wrote: > Peter, All, > > On 2021-01-03 21:19 +0100, Peter Seiderer spake thusly: > > Link with libatomic if available. > > > > Fixes: > > > > - http://autobuild.buildroot.net/results/e0766eef95a2559d51e58d1a81a9c40df84ae509 > > > > .../build/quickjs-2020-11-08/quickjs.c:12229: undefined reference to `__atomic_fetch_xor_1' > > > > Signed-off-by: Peter Seiderer <ps.report@gmx.net> > > Applied to master, thanks. > > But see below for a small nit... > > > --- > > ...ile-add-optional-link-with-libatomic.patch | 30 +++++++++++++++++++ > > package/quickjs/quickjs.mk | 6 +++- > > 2 files changed, 35 insertions(+), 1 deletion(-) > > create mode 100644 package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch > > > > diff --git a/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch b/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch > > new file mode 100644 > > index 0000000000..12f4eb2338 > > --- /dev/null > > +++ b/package/quickjs/0001-Makefile-add-optional-link-with-libatomic.patch > > @@ -0,0 +1,30 @@ > > +From 2cf2aa34d5d55a4eedb1aedd4d56d89d24870230 Mon Sep 17 00:00:00 2001 > > +From: Peter Seiderer <ps.report@gmx.net> > > +Date: Sun, 3 Jan 2021 21:11:44 +0100 > > +Subject: [PATCH] Makefile: add optional link with libatomic > > + > > +Add optional libatomic linking if available to fix: > > + > > + .../build/quickjs-2020-11-08/quickjs.c:12229: undefined reference to `__atomic_fetch_xor_1' > > + > > +Signed-off-by: Peter Seiderer <ps.report@gmx.net> > > +--- > > + Makefile | 2 +- > > + 1 file changed, 1 insertion(+), 1 deletion(-) > > + > > +diff --git a/Makefile b/Makefile > > +index e6ae827..22ad496 100644 > > +--- a/Makefile > > ++++ b/Makefile > > +@@ -177,7 +177,7 @@ endif > > + HOST_LIBS=-lm -ldl -lpthread > > + LIBS=-lm > > + ifndef CONFIG_WIN32 > > +-LIBS+=-ldl -lpthread > > ++LIBS+=-ldl -lpthread $(LIBATOMIC) > > + endif > > I've changed that to be a generic variable, not tied to -latomic: > > LIBS+=$(EXTRA_LIBS) Thanks for improvement, definitely better... > > Do not forget to send the patch upstream. ;-) Finally done, see [1]... Regards, Peter [1] https://www.freelists.org/post/quickjs-devel/PATCH-Makefile-allow-linking-with-extra-libraries > > Regards, > Yann E. MORIN. > > > + $(OBJDIR): > > +-- > > +2.29.2 > > + > > diff --git a/package/quickjs/quickjs.mk b/package/quickjs/quickjs.mk > > index 1a2e63278f..389ed71133 100644 > > --- a/package/quickjs/quickjs.mk > > +++ b/package/quickjs/quickjs.mk > > @@ -10,8 +10,12 @@ QUICKJS_SITE = https://bellard.org/quickjs > > QUICKJS_LICENSE = MIT > > QUICKJS_INSTALL_STAGING = YES > > > > +ifeq ($(BR2_TOOLCHAIN_HAS_LIBATOMIC),y) > > +QUICKJS_LIBATOMIC += -latomic > > +endif > > + > > define QUICKJS_BUILD_CMDS > > - $(TARGET_MAKE_ENV) $(MAKE) -C $(@D) \ > > + $(TARGET_MAKE_ENV) LIBATOMIC=$(QUICKJS_LIBATOMIC) $(MAKE) -C $(@D) \ > > CROSS_PREFIX="$(TARGET_CROSS)" \ > > all > > endef > > -- > > 2.29.2 > > > > _______________________________________________ > > buildroot mailing list > > buildroot at busybox.net > > http://lists.busybox.net/mailman/listinfo/buildroot > ^ permalink raw reply [flat|nested] 5+ messages in thread
* [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) 2021-01-03 20:19 [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) Peter Seiderer 2021-01-03 20:19 ` [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic Peter Seiderer @ 2021-01-03 21:44 ` Yann E. MORIN 1 sibling, 0 replies; 5+ messages in thread From: Yann E. MORIN @ 2021-01-03 21:44 UTC (permalink / raw) To: buildroot Peter, All, On 2021-01-03 21:19 +0100, Peter Seiderer spake thusly: > Fixes: > > - http://autobuild.buildroot.net/results/c7882cc2d66984350f54d619f39cfee5065d941a > > gcc -g -Wall -MMD -MF .obj/libregexp.host.o.d -Wno-array-bounds -Wno-format-truncation -D_GNU_SOURCE -DCONFIG_VERSION=\"2020-11-08\" -DCONFIG_BIGNUM -O2 -flto -c -o .obj/libregexp.host.o libregexp.c > quickjs.c:112:23: fatal error: stdatomic.h: No such file or directory > #include <stdatomic.h> > ^ > compilation terminated. > > Signed-off-by: Peter Seiderer <ps.report@gmx.net> Applied to master, thanks. Regards, Yann E. MORIN. > --- > package/quickjs/Config.in | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/package/quickjs/Config.in b/package/quickjs/Config.in > index 886cbd4db6..5c3b068c3a 100644 > --- a/package/quickjs/Config.in > +++ b/package/quickjs/Config.in > @@ -4,6 +4,7 @@ config BR2_PACKAGE_QUICKJS > # No way to check for fenv support. > depends on !BR2_TOOLCHAIN_USES_UCLIBC > depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C11/stdatomic.h > + depends on BR2_HOST_GCC_AT_LEAST_4_9 # C11/stdatomic.h > depends on BR2_USE_MMU # fork() > help > QuickJS is a small and embeddable Javascript engine. > @@ -12,6 +13,7 @@ config BR2_PACKAGE_QUICKJS > > https://bellard.org/quickjs/ > > -comment "quickjs needs a glibc or musl toolchain w/ gcc >= 4.9, dynamic library" > +comment "quickjs needs a glibc or musl toolchain w/ gcc >= 4.9, host gcc >= 4.9, dynamic library" > depends on BR2_USE_MMU > - depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_UCLIBC || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 > + depends on BR2_STATIC_LIBS || BR2_TOOLCHAIN_USES_UCLIBC || \ > + !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || !BR2_HOST_GCC_AT_LEAST_4_9 > -- > 2.29.2 > > _______________________________________________ > buildroot mailing list > buildroot at busybox.net > http://lists.busybox.net/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. | '------------------------------^-------^------------------^--------------------' ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2021-01-09 19:49 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2021-01-03 20:19 [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) Peter Seiderer 2021-01-03 20:19 ` [Buildroot] [PATCH v1 2/2] package/quickjs: link with libatomic Peter Seiderer 2021-01-03 21:45 ` Yann E. MORIN 2021-01-09 19:49 ` Peter Seiderer 2021-01-03 21:44 ` [Buildroot] [PATCH v1 1/2] package/quickjs: needs host gcc >= 4.9 (C11/stdatomic.h) Yann E. MORIN
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox