[Buildroot] [PATCH 1/2] package/libepoxy: needs dynamic library
Bernd Kuhls <[email protected]>
| Newsgroups | net.busybox.buildroot |
|---|---|
| Message-ID | <[email protected]> |
Buildroot commit cd2583ca0a993cb44e8822966f101e820ac2619e removed the dependencies to gl/egl which revealed that libepoxy needs a toolchain with dynamic library: ../src/dispatch_common.c:166:10: fatal error: dlfcn.h: No such file or directory 166 | #include <dlfcn.h> This patch disables static builds and propagates reverse dependencies. Fixes: https://autobuild.buildroot.net/results/9d5/9d56cb52eb57df61184e26cea9604f1521d135f4/ Signed-off-by: Bernd Kuhls <[email protected]> --- Gitlab pipelines passed: https://gitlab.com/bkuhls/buildroot/-/commits/434f04d604de12c7a4dcad4a605b0c5219d7319c package/libcamera-apps/Config.in | 2 +- package/libepoxy/Config.in | 4 ++++ package/libfm/Config.in | 4 +++- package/libgtk3/Config.in | 4 +++- package/libgtk4/Config.in | 4 +++- package/menu-cache/Config.in | 6 ++++-- package/pcmanfm/Config.in | 4 +++- package/qemu/Config.in | 8 ++++++++ package/virglrenderer/Config.in | 5 +++-- package/vte/Config.in | 4 +++- package/webkitgtk/Config.in | 2 +- package/wpebackend-fdo/Config.in | 2 +- package/wpewebkit/Config.in | 2 +- package/x11r7/xdriver_xf86-video-amdgpu/Config.in | 5 +++-- package/xscreensaver/Config.in | 4 +++- 15 files changed, 44 insertions(+), 16 deletions(-) diff --git a/package/libcamera-apps/Config.in b/package/libcamera-apps/Config.in index fa41d1be2d..a7f37e3e52 100644 --- a/package/libcamera-apps/Config.in +++ b/package/libcamera-apps/Config.in @@ -4,7 +4,7 @@ config BR2_PACKAGE_LIBCAMERA_APPS depends on BR2_INSTALL_LIBSTDCPP # libcamera/boost depends on BR2_TOOLCHAIN_HAS_THREADS # libcamera/boost depends on BR2_TOOLCHAIN_GCC_AT_LEAST_9 # libcamera - depends on !BR2_STATIC_LIBS # gnutls/libcamera + depends on !BR2_STATIC_LIBS # gnutls/libcamera, libepoxy depends on BR2_USE_WCHAR # gnutls/libcamera/boost depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_5 select BR2_PACKAGE_BOOST diff --git a/package/libepoxy/Config.in b/package/libepoxy/Config.in index 4b23497d46..269b43be85 100644 --- a/package/libepoxy/Config.in +++ b/package/libepoxy/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_LIBEPOXY bool "libepoxy" + depends on !BR2_STATIC_LIBS # dlfcn.h select BR2_PACKAGE_XUTIL_UTIL_MACROS help Epoxy is a library for handling OpenGL function pointer @@ -10,3 +11,6 @@ config BR2_PACKAGE_LIBEPOXY OpenGL entry points at runtime. https://github.com/anholt/libepoxy + +comment "libepoxy needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS diff --git a/package/libfm/Config.in b/package/libfm/Config.in index 9537a723ff..e4d6528db5 100644 --- a/package/libfm/Config.in +++ b/package/libfm/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_LIBFM depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk3, libglib2 depends on BR2_USE_MMU # libgtk3, libglib2 depends on BR2_INSTALL_LIBSTDCPP # libgtk3 + depends on !BR2_STATIC_LIBS # libepoxy -> libgtk3 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk3 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libgtk3 depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # libgtk3 @@ -26,11 +27,12 @@ config BR2_PACKAGE_LIBFM http://wiki.lxde.org/en/Libfm -comment "libfm a toolchain w/ wchar, threads, C++, gcc >= 4.9" +comment "libfm a toolchain w/ dynamic library, wchar, threads, C++, gcc >= 4.9" depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS || \ !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 comment "libfm needs X.org with an OpenGL backend" diff --git a/package/libgtk3/Config.in b/package/libgtk3/Config.in index 52ee50db49..7717afdac2 100644 --- a/package/libgtk3/Config.in +++ b/package/libgtk3/Config.in @@ -1,8 +1,9 @@ -comment "libgtk3 needs a toolchain w/ wchar, threads, C++, gcc >= 4.9" +comment "libgtk3 needs a toolchain w/ dynamic library, wchar, threads, C++, gcc >= 4.9" depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ + BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ !BR2_TOOLCHAIN_HAS_THREADS @@ -19,6 +20,7 @@ config BR2_PACKAGE_LIBGTK3 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2 depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # pango + depends on !BR2_STATIC_LIBS # libepoxy depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # pango -> harfbuzz depends on BR2_PACKAGE_HAS_LIBEGL || \ diff --git a/package/libgtk4/Config.in b/package/libgtk4/Config.in index 3daa676169..958742ae43 100644 --- a/package/libgtk4/Config.in +++ b/package/libgtk4/Config.in @@ -1,9 +1,10 @@ -comment "libgtk4 needs a toolchain w/ wchar, threads, C++, gcc >= 4.9" +comment "libgtk4 needs a toolchain w/ dynamic library, wchar, threads, C++, gcc >= 4.9" depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_HAS_THREADS comment "libgtk4 needs an OpenGL(ES) EGL backend" @@ -18,6 +19,7 @@ config BR2_PACKAGE_LIBGTK4 depends on BR2_TOOLCHAIN_HAS_THREADS # glib2, graphene depends on BR2_USE_MMU # glib2 depends on BR2_INSTALL_LIBSTDCPP # pango + depends on !BR2_STATIC_LIBS # libepoxy depends on BR2_TOOLCHAIN_HAS_SYNC_4 # pango -> harfbuzz depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # pango -> harfbuzz # Even in the case of X11/OpenGL, libgtk4 needs epoxy built diff --git a/package/menu-cache/Config.in b/package/menu-cache/Config.in index e61ca447c1..3e7137c7a8 100644 --- a/package/menu-cache/Config.in +++ b/package/menu-cache/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_MENU_CACHE bool "menu-cache" depends on BR2_USE_WCHAR # libglib2 depends on BR2_TOOLCHAIN_HAS_THREADS # libglib2 + depends on !BR2_STATIC_LIBS # libepoxy -> libfm depends on BR2_USE_MMU # libglib2 select BR2_PACKAGE_LIBGLIB2 select BR2_PACKAGE_LIBFM_EXTRA @@ -11,6 +12,7 @@ config BR2_PACKAGE_MENU_CACHE http://wiki.lxde.org/ -comment "menu-cache needs a toolchain w/ wchar, threads" +comment "menu-cache needs a toolchain w/ dynamic library, wchar, threads" depends on BR2_USE_MMU - depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS diff --git a/package/pcmanfm/Config.in b/package/pcmanfm/Config.in index a4522d88f4..7e411b22ac 100644 --- a/package/pcmanfm/Config.in +++ b/package/pcmanfm/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_PCMANFM depends on BR2_TOOLCHAIN_HAS_THREADS # libfm depends on BR2_USE_MMU # libfm depends on BR2_INSTALL_LIBSTDCPP # libfm + depends on !BR2_STATIC_LIBS # libepoxy -> libgtk3 -> libfm depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libfm depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libfm depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL # libfm @@ -22,11 +23,12 @@ config BR2_PACKAGE_PCMANFM http://wiki.lxde.org/en/PCManFM -comment "pcmanfm a toolchain w/ wchar, threads, C++, gcc >= 4.9" +comment "pcmanfm a toolchain w/ dynamic library, wchar, threads, C++, gcc >= 4.9" depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS || \ !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 comment "pcmanfm needs X.org with an OpenGL backend" diff --git a/package/qemu/Config.in b/package/qemu/Config.in index bfb8ccea88..20a7fa3db7 100644 --- a/package/qemu/Config.in +++ b/package/qemu/Config.in @@ -115,6 +115,7 @@ config BR2_PACKAGE_QEMU_SDL config BR2_PACKAGE_QEMU_OPENGL bool "Enable OpenGL" depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL + depends on !BR2_STATIC_LIBS # libepoxy select BR2_PACKAGE_LIBEPOXY help Say 'y' to enable OpenGL accelerated display frontend support. @@ -126,9 +127,13 @@ config BR2_PACKAGE_QEMU_OPENGL comment "OpenGL support needs an OpenGL and/or OpenGL EGL backend" depends on !(BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL) +comment "OpenGL support needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_QEMU_VIRGLRENDERER bool "Enable virglrenderer" depends on BR2_PACKAGE_HAS_LIBEGL || BR2_PACKAGE_HAS_LIBGL + depends on !BR2_STATIC_LIBS # libepoxy -> virglrenderer select BR2_PACKAGE_QEMU_OPENGL select BR2_PACKAGE_VIRGLRENDERER help @@ -147,6 +152,9 @@ comment "virglrenderer needs virgl, venus, or a DRM backend for guest accelerati depends on BR2_PACKAGE_QEMU_VIRGLRENDERER depends on !BR2_PACKAGE_VIRGLRENDERER_HAS_BACKEND +comment "virglrenderer needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS + config BR2_PACKAGE_QEMU_FDT bool "Enable FDT" select BR2_PACKAGE_DTC diff --git a/package/virglrenderer/Config.in b/package/virglrenderer/Config.in index 281d99b22f..70b2944664 100644 --- a/package/virglrenderer/Config.in +++ b/package/virglrenderer/Config.in @@ -2,6 +2,7 @@ config BR2_PACKAGE_VIRGLRENDERER bool "virglrenderer" depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # needs gcc >= 4.9 for __sync builtins depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS # libepoxy depends on BR2_USE_MMU # fork() select BR2_PACKAGE_LIBEPOXY help @@ -107,8 +108,8 @@ config BR2_PACKAGE_VIRGLRENDERER_VAAPI endif -comment "virglrenderer needs a toolchain w/ gcc >= 4.9" - depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 +comment "virglrenderer needs a toolchain w/ dynamic library, gcc >= 4.9" + depends on BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 config BR2_PACKAGE_VIRGLRENDERER_HAS_BACKEND bool diff --git a/package/vte/Config.in b/package/vte/Config.in index 8a231a21af..af6bfae890 100644 --- a/package/vte/Config.in +++ b/package/vte/Config.in @@ -5,6 +5,7 @@ config BR2_PACKAGE_VTE depends on BR2_TOOLCHAIN_HAS_THREADS depends on BR2_USE_MMU depends on BR2_INSTALL_LIBSTDCPP + depends on !BR2_STATIC_LIBS # libepoxy -> libgtk3 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_10 # C++20 depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_TOOLCHAIN_USES_MUSL @@ -22,12 +23,13 @@ config BR2_PACKAGE_VTE http://github.com/GNOME/vte -comment "vte needs a uClibc or glibc toolchain w/ wchar, threads, C++, gcc >= 10" +comment "vte needs a uClibc or glibc toolchain w/ dynamic library, wchar, threads, C++, gcc >= 10" depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP || \ !BR2_TOOLCHAIN_HAS_THREADS || \ + BR2_STATIC_LIBS || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_10 || \ BR2_TOOLCHAIN_USES_MUSL diff --git a/package/webkitgtk/Config.in b/package/webkitgtk/Config.in index 3a4c3ed792..6e9d1d9188 100644 --- a/package/webkitgtk/Config.in +++ b/package/webkitgtk/Config.in @@ -28,7 +28,7 @@ comment "webkitgtk needs libgtk3 or libgtk4 and a toolchain w/ C++, wchar, NPTL, config BR2_PACKAGE_WEBKITGTK bool "webkitgtk" - depends on !BR2_STATIC_LIBS # wayland + depends on !BR2_STATIC_LIBS # libepoxy, wayland depends on !BR2_BINFMT_FLAT # icu depends on BR2_PACKAGE_HAS_LIBEGL depends on BR2_HOST_GCC_AT_LEAST_7 # icu diff --git a/package/wpebackend-fdo/Config.in b/package/wpebackend-fdo/Config.in index bd0ab5421e..0e59b8df1a 100644 --- a/package/wpebackend-fdo/Config.in +++ b/package/wpebackend-fdo/Config.in @@ -4,7 +4,7 @@ comment "wpebackend-fdo needs a toolchain w/ C++, wchar, threads, dynamic librar config BR2_PACKAGE_WPEBACKEND_FDO bool "wpebackend-fdo" - depends on !BR2_STATIC_LIBS # wayland + depends on !BR2_STATIC_LIBS # libepoxy, wayland depends on BR2_INSTALL_LIBSTDCPP depends on BR2_TOOLCHAIN_HAS_THREADS # wayland, libglib2 depends on BR2_USE_WCHAR # libglib2 diff --git a/package/wpewebkit/Config.in b/package/wpewebkit/Config.in index c4ee5a27f7..f7c0ad45f4 100644 --- a/package/wpewebkit/Config.in +++ b/package/wpewebkit/Config.in @@ -31,7 +31,7 @@ comment "wpewebkit needs an OpenGL ES w/ EGL-capable Wayland backend" config BR2_PACKAGE_WPEWEBKIT bool "wpewebkit" - depends on !BR2_STATIC_LIBS # wayland + depends on !BR2_STATIC_LIBS # libepoxy, wayland depends on !BR2_BINFMT_FLAT # icu depends on BR2_HOST_GCC_AT_LEAST_7 # icu depends on BR2_INSTALL_LIBSTDCPP # harfbuzz, icu diff --git a/package/x11r7/xdriver_xf86-video-amdgpu/Config.in b/package/x11r7/xdriver_xf86-video-amdgpu/Config.in index fb23fc1fdf..e5adb73663 100644 --- a/package/x11r7/xdriver_xf86-video-amdgpu/Config.in +++ b/package/x11r7/xdriver_xf86-video-amdgpu/Config.in @@ -1,5 +1,6 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_AMDGPU bool "xf86-video-amdgpu" + depends on !BR2_STATIC_LIBS # libepoxy depends on BR2_USE_MMU # libdrm depends on BR2_PACKAGE_HAS_LIBGBM select BR2_PACKAGE_LIBDRM @@ -10,6 +11,6 @@ config BR2_PACKAGE_XDRIVER_XF86_VIDEO_AMDGPU help AMD GPU video driver -comment "xf86-video-amdgpu needs GBM" +comment "xf86-video-amdgpu needs GBM and a toolchain w/ dynamic library" depends on BR2_USE_MMU - depends on !BR2_PACKAGE_HAS_LIBGBM + depends on !BR2_PACKAGE_HAS_LIBGBM || BR2_STATIC_LIBS diff --git a/package/xscreensaver/Config.in b/package/xscreensaver/Config.in index 2bed8f4765..80fb1550f3 100644 --- a/package/xscreensaver/Config.in +++ b/package/xscreensaver/Config.in @@ -7,6 +7,7 @@ config BR2_PACKAGE_XSCREENSAVER depends on BR2_TOOLCHAIN_HAS_THREADS # libgtk3, libglib2 depends on BR2_USE_MMU # libgtk3, libglib2 depends on BR2_INSTALL_LIBSTDCPP # libgtk3 + depends on !BR2_STATIC_LIBS # libepoxy -> libgtk3 depends on BR2_TOOLCHAIN_HAS_SYNC_4 # libgtk3 depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libgtk3 select BR2_PACKAGE_GDK_PIXBUF @@ -30,11 +31,12 @@ config BR2_PACKAGE_XSCREENSAVER http://www.jwz.org/xscreensaver/ -comment "xscreensaver needs a toolchain w/ wchar, C++, threads, gcc >= 4.9, OpenGL backend" +comment "xscreensaver needs a toolchain w/ dynamic library, wchar, C++, threads, gcc >= 4.9, OpenGL backend" depends on BR2_PACKAGE_XORG7 depends on BR2_PACKAGE_HOST_RUSTC_ARCH_SUPPORTS depends on BR2_USE_MMU depends on BR2_TOOLCHAIN_HAS_SYNC_4 depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_HAS_THREADS || \ !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 || \ + BR2_STATIC_LIBS || \ !BR2_USE_WCHAR || !BR2_PACKAGE_HAS_LIBGL -- 2.47.3 _______________________________________________ buildroot mailing list [email protected] https://lists.buildroot.org/mailman/listinfo/buildroot