Message ID | 20240723203737.643733-1-fontaine.fabrice@gmail.com |
---|---|
State | Accepted |
Headers | show |
Series | [v2,1/1] package/libdex: needs ucontext | expand |
On Tue, 23 Jul 2024 22:37:37 +0200 Fabrice Fontaine <fontaine.fabrice@gmail.com> wrote: > libdex needs ucontext since its addition in commit > 70319b47f646f74f407ed3355baf5b581a10518a: > > /home/autobuild/autobuild/instance-11/output-1/host/lib/gcc/aarch64-buildroot-linux-musl/13.3.0/../../../../aarch64-buildroot-linux-musl/bin/ld: src/libdex-1.a.p/dex-fiber.c.o: in function `dex_fiber_context_init': > /home/autobuild/autobuild/instance-11/output-1/build/libdex-0.6.1/build/../src/dex-fiber-context-private.h:131:(.text+0x30c): undefined reference to `getcontext' > > [...] > > In file included from ../src/dex-fiber-private.h:34, > from ../src/dex-scheduler.c:25: > ../src/dex-fiber-context-private.h: In function '_dex_fiber_context_makecontext': > ../src/dex-fiber-context-private.h:108:3: error: implicit declaration of function 'makecontext' [-Werror=implicit-function-declaration] > 108 | makecontext (ucontext, > | ^~~~~~~~~~~ > > Fixes: 70319b47f646f74f407ed3355baf5b581a10518a > - http://autobuild.buildroot.org/results/5f23b0e41f2957b0562c5d168f35e42f13bdad0b > - http://autobuild.buildroot.org/results/67d958e9a8e1dfb147ac7be4fcb74fcafbbce987 > > Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> > --- > Changes v1 -> v2 (after review of Thomas Petazzoni): > - Fix libucontext select Applied to master, thanks. Thomas
diff --git a/package/libdex/Config.in b/package/libdex/Config.in index f10bdac46f..5f94a79b73 100644 --- a/package/libdex/Config.in +++ b/package/libdex/Config.in @@ -3,7 +3,11 @@ config BR2_PACKAGE_LIBDEX depends on BR2_USE_MMU # libglib2 depends on BR2_USE_WCHAR # libglib2, gettext depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on BR2_TOOLCHAIN_HAS_UCONTEXT || \ + BR2_PACKAGE_LIBUCONTEXT_ARCH_SUPPORTS select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_LIBUCONTEXT if \ + BR2_PACKAGE_LIBUCONTEXT_ARCH_SUPPORTS && !BR2_TOOLCHAIN_HAS_UCONTEXT help Dex provides Future-based programming for GLib-based applications. It both integrates with and brings new @@ -12,6 +16,8 @@ config BR2_PACKAGE_LIBDEX https://gitlab.gnome.org/GNOME/libdex -comment "libdex needs a toolchain w/ wchar, threads" +comment "libdex needs a toolchain w/ wchar, threads, ucontext" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + !(BR2_TOOLCHAIN_HAS_UCONTEXT || \ + BR2_PACKAGE_LIBUCONTEXT_ARCH_SUPPORTS) diff --git a/package/libdex/libdex.mk b/package/libdex/libdex.mk index 7c652a0409..360b389255 100644 --- a/package/libdex/libdex.mk +++ b/package/libdex/libdex.mk @@ -22,6 +22,11 @@ LIBDEX_CONF_OPTS = \ -Deventfd=enabled \ -Dintrospection=disabled +ifeq ($(BR2_PACKAGE_LIBUCONTEXT),y) +LIBDEX_DEPENDENCIES += libucontext +LIBDEX_LDFLAGS += $(TARGET_LDFLAGS) -lucontext +endif + ifeq ($(BR2_PACKAGE_LIBURING),y) LIBDEX_CONF_OPTS += -Dliburing=enabled LIBDEX_DEPENDENCIES += liburing
libdex needs ucontext since its addition in commit 70319b47f646f74f407ed3355baf5b581a10518a: /home/autobuild/autobuild/instance-11/output-1/host/lib/gcc/aarch64-buildroot-linux-musl/13.3.0/../../../../aarch64-buildroot-linux-musl/bin/ld: src/libdex-1.a.p/dex-fiber.c.o: in function `dex_fiber_context_init': /home/autobuild/autobuild/instance-11/output-1/build/libdex-0.6.1/build/../src/dex-fiber-context-private.h:131:(.text+0x30c): undefined reference to `getcontext' [...] In file included from ../src/dex-fiber-private.h:34, from ../src/dex-scheduler.c:25: ../src/dex-fiber-context-private.h: In function '_dex_fiber_context_makecontext': ../src/dex-fiber-context-private.h:108:3: error: implicit declaration of function 'makecontext' [-Werror=implicit-function-declaration] 108 | makecontext (ucontext, | ^~~~~~~~~~~ Fixes: 70319b47f646f74f407ed3355baf5b581a10518a - http://autobuild.buildroot.org/results/5f23b0e41f2957b0562c5d168f35e42f13bdad0b - http://autobuild.buildroot.org/results/67d958e9a8e1dfb147ac7be4fcb74fcafbbce987 Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> --- Changes v1 -> v2 (after review of Thomas Petazzoni): - Fix libucontext select package/libdex/Config.in | 10 ++++++++-- package/libdex/libdex.mk | 5 +++++ 2 files changed, 13 insertions(+), 2 deletions(-)