All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bernd Kuhls <bernd@kuhls.net>
To: buildroot@buildroot.org
Cc: Laurent Vivier <laurent@vivier.eu>,
	"Wojciech M . Zabolotny" <wzab01@gmail.com>,
	James Hilliard <james.hilliard1@gmail.com>,
	Romain Naour <romain.naour@gmail.com>,
	Tobias Waldekranz <tobias@waldekranz.com>
Subject: [Buildroot] [PATCH v2 1/1] package/elfutils: enable on musl
Date: Sun, 22 Oct 2023 17:41:33 +0200	[thread overview]
Message-ID: <20231022154133.1619344-1-bernd@kuhls.net> (raw)

Buildroot commit eb60820c0a9b3f938f32516f24df2eee9aac1e26 disabled
elfutils for musl toolchains in 2015. Current code builds fine with musl
so remove the exceptions.

Signed-off-by: Bernd Kuhls <bernd@kuhls.net>
---
v2: fix ELFUTILS_CONF_OPTS (Thomas)

 package/avrdude/Config.in    | 6 ++----
 package/bpftool/Config.in    | 4 +---
 package/elfutils/Config.in   | 9 +++------
 package/elfutils/elfutils.mk | 5 ++++-
 package/kexec-lite/Config.in | 6 ++----
 package/kmemd/Config.in      | 6 ++----
 package/libbpf/Config.in     | 6 ++----
 package/ltrace/Config.in     | 6 ++----
 package/mesa3d/Config.in     | 8 --------
 package/petitboot/Config.in  | 4 +---
 package/racehound/Config.in  | 6 ++----
 11 files changed, 21 insertions(+), 45 deletions(-)

diff --git a/package/avrdude/Config.in b/package/avrdude/Config.in
index cbbd076667..06fee0ca7f 100644
--- a/package/avrdude/Config.in
+++ b/package/avrdude/Config.in
@@ -3,7 +3,6 @@ config BR2_PACKAGE_AVRDUDE
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_USE_WCHAR # elfutils
 	depends on !BR2_STATIC_LIBS # elfutils
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # libusb
 	select BR2_PACKAGE_ELFUTILS
 	select BR2_PACKAGE_LIBUSB
@@ -27,7 +26,6 @@ comment "SPI support needs a toolchain w/ linux headers >= 4.8"
 
 endif
 
-comment "avrdude needs a uClibc or glibc toolchain w/ threads, wchar, dynamic library, gcc >= 4.9"
+comment "avrdude needs a toolchain w/ threads, wchar, dynamic library, gcc >= 4.9"
 	depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR \
-		|| BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| BR2_STATIC_LIBS || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9
diff --git a/package/bpftool/Config.in b/package/bpftool/Config.in
index d131ec566e..ef3a7a8a45 100644
--- a/package/bpftool/Config.in
+++ b/package/bpftool/Config.in
@@ -16,7 +16,6 @@ config BR2_PACKAGE_BPFTOOL
 	depends on BR2_USE_WCHAR # binutils, elfutils
 	depends on !BR2_STATIC_LIBS # elfutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12
 	select BR2_PACKAGE_BINUTILS
 	select BR2_PACKAGE_ELFUTILS
@@ -24,11 +23,10 @@ config BR2_PACKAGE_BPFTOOL
 	  bpftool is a tool for for inspection and simple manipulation
 	  of eBPF programs and maps.
 
-comment "bpftool needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads, headers >= 4.12"
+comment "bpftool needs a toolchain w/ wchar, dynamic library, threads, headers >= 4.12"
 	depends on BR2_PACKAGE_BPFTOOL_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on !BR2_nios2
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
 		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) \
 		|| !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_12
diff --git a/package/elfutils/Config.in b/package/elfutils/Config.in
index 5f45de14ab..c355048c6d 100644
--- a/package/elfutils/Config.in
+++ b/package/elfutils/Config.in
@@ -1,17 +1,14 @@
-comment "elfutils needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads"
+comment "elfutils needs a toolchain w/ wchar, dynamic library, threads"
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
-		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| !BR2_TOOLCHAIN_HAS_THREADS
 
 config BR2_PACKAGE_ELFUTILS
 	bool "elfutils"
 	depends on BR2_USE_WCHAR
 	depends on !BR2_STATIC_LIBS
 	depends on BR2_TOOLCHAIN_HAS_THREADS
-	# Only glibc and uClibc implement the myriad of required GNUisms
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC
 	select BR2_PACKAGE_ZLIB
-	select BR2_PACKAGE_ARGP_STANDALONE if BR2_TOOLCHAIN_USES_UCLIBC
+	select BR2_PACKAGE_ARGP_STANDALONE if !BR2_TOOLCHAIN_USES_GLIBC
 	select BR2_PACKAGE_MUSL_FTS if !BR2_TOOLCHAIN_USES_GLIBC
 	help
 	  Libraries/utilities to handle ELF objects (drop in
diff --git a/package/elfutils/elfutils.mk b/package/elfutils/elfutils.mk
index 0757851b72..28fcb52eb3 100644
--- a/package/elfutils/elfutils.mk
+++ b/package/elfutils/elfutils.mk
@@ -61,8 +61,11 @@ HOST_ELFUTILS_CONF_OPTS += --disable-libdebuginfod --disable-debuginfod
 ELFUTILS_CONF_ENV += \
 	LDFLAGS="$(ELFUTILS_LDFLAGS)"
 
-ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
+ifeq ($(BR2_TOOLCHAIN_USES_GLIBC),)
 ELFUTILS_DEPENDENCIES += argp-standalone
+endif
+
+ifeq ($(BR2_TOOLCHAIN_USES_UCLIBC),y)
 ELFUTILS_CONF_OPTS += --disable-symbol-versioning
 endif
 
diff --git a/package/kexec-lite/Config.in b/package/kexec-lite/Config.in
index abfa95ab36..5beaec6418 100644
--- a/package/kexec-lite/Config.in
+++ b/package/kexec-lite/Config.in
@@ -4,7 +4,6 @@ config BR2_PACKAGE_KEXEC_LITE
 	depends on !BR2_STATIC_LIBS # dtc, elfutils
 	depends on BR2_USE_WCHAR # elfutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	select BR2_PACKAGE_ELFUTILS
 	select BR2_PACKAGE_DTC
 	select BR2_PACKAGE_DTC_PROGRAMS
@@ -18,8 +17,7 @@ config BR2_PACKAGE_KEXEC_LITE
 
 	  https://github.com/antonblanchard/kexec-lite
 
-comment "kexec-lite needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads"
+comment "kexec-lite needs a toolchain w/ wchar, dynamic library, threads"
 	depends on BR2_powerpc || BR2_powerpc64
 	depends on BR2_STATIC_LIBS || !BR2_USE_WCHAR \
-		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/kmemd/Config.in b/package/kmemd/Config.in
index cd92757508..b3aebf1224 100644
--- a/package/kmemd/Config.in
+++ b/package/kmemd/Config.in
@@ -5,16 +5,14 @@ config BR2_PACKAGE_KMEMD
 	depends on !BR2_STATIC_LIBS # libbpf
 	depends on BR2_TOOLCHAIN_HAS_THREADS # libbpf
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_5_14
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # libbpf
 	select BR2_PACKAGE_LIBBPF
 	help
 	  Explore a live Linux kernel's memory using GDB
 
 	  https://github.com/wkz/kmemd
 
-comment "kmemd needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads, headers >= 5.14"
+comment "kmemd needs a toolchain w/ wchar, dynamic library, threads, headers >= 5.14"
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
 		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13
diff --git a/package/libbpf/Config.in b/package/libbpf/Config.in
index 1465366c9e..a78392cdc8 100644
--- a/package/libbpf/Config.in
+++ b/package/libbpf/Config.in
@@ -5,7 +5,6 @@ config BR2_PACKAGE_LIBBPF
 	depends on !BR2_STATIC_LIBS # elfutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	select BR2_PACKAGE_ELFUTILS
 	select BR2_PACKAGE_ZLIB
 	help
@@ -16,9 +15,8 @@ config BR2_PACKAGE_LIBBPF
 
 	  https://github.com/libbpf/libbpf
 
-comment "libbpf needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads, headers >= 4.13"
+comment "libbpf needs a toolchain w/ wchar, dynamic library, threads, headers >= 4.13"
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
 		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13 \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| !BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_13
diff --git a/package/ltrace/Config.in b/package/ltrace/Config.in
index ce5a85edcf..21d381db70 100644
--- a/package/ltrace/Config.in
+++ b/package/ltrace/Config.in
@@ -15,7 +15,6 @@ config BR2_PACKAGE_LTRACE
 	depends on BR2_USE_WCHAR # elfutils
 	depends on !BR2_STATIC_LIBS # elfutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	depends on BR2_PACKAGE_LTRACE_ARCH_SUPPORTS
 	select BR2_PACKAGE_ELFUTILS
 	help
@@ -26,8 +25,7 @@ config BR2_PACKAGE_LTRACE
 
 	  http://ltrace.org
 
-comment "ltrace needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads"
+comment "ltrace needs a toolchain w/ wchar, dynamic library, threads"
 	depends on BR2_PACKAGE_LTRACE_ARCH_SUPPORTS
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS \
-		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| !BR2_TOOLCHAIN_HAS_THREADS
diff --git a/package/mesa3d/Config.in b/package/mesa3d/Config.in
index 1e4a73a50f..ca7b9c8178 100644
--- a/package/mesa3d/Config.in
+++ b/package/mesa3d/Config.in
@@ -194,7 +194,6 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI
 	depends on BR2_USE_MMU # libdrm
 	depends on BR2_i386 || BR2_x86_64
 	depends on BR2_PACKAGE_MESA3D_LLVM
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	select BR2_PACKAGE_MESA3D_GALLIUM_DRIVER
 	select BR2_PACKAGE_LIBDRM_AMDGPU
 	select BR2_PACKAGE_LIBDRM_RADEON
@@ -204,13 +203,6 @@ config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_RADEONSI
 	help
 	  Driver for ATI/AMD Radeon HD7000/HD8000/Rx200 GPUs.
 
-# Radeon SI needs libelf
-# musl is not currently compatible with elfutils
-comment "Radeon SI driver needs a uClibc or glibc toolchain"
-	depends on BR2_USE_MMU
-	depends on BR2_PACKAGE_MESA3D_LLVM
-	depends on !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
-
 config BR2_PACKAGE_MESA3D_GALLIUM_DRIVER_SVGA
 	bool "Gallium vmware svga driver"
 	depends on BR2_i386 || BR2_x86_64
diff --git a/package/petitboot/Config.in b/package/petitboot/Config.in
index 0b4dc762bb..3d3c798c25 100644
--- a/package/petitboot/Config.in
+++ b/package/petitboot/Config.in
@@ -6,7 +6,6 @@ config BR2_PACKAGE_PETITBOOT
 	depends on BR2_USE_WCHAR # elfutils
 	depends on !BR2_STATIC_LIBS # elfutils, lvm2
 	depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils, lvm2
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	depends on BR2_PACKAGE_HAS_UDEV
 	select BR2_PACKAGE_ELFUTILS
 	select BR2_PACKAGE_LVM2 # devmapper
@@ -22,10 +21,9 @@ config BR2_PACKAGE_PETITBOOT
 
 	  http://www.kernel.org/pub/linux/kernel/people/geoff/petitboot/petitboot.html
 
-comment "petitboot needs a uClibc or glibc toolchain w/ wchar, dynamic library, threads, udev /dev management"
+comment "petitboot needs a toolchain w/ wchar, dynamic library, threads, udev /dev management"
 	depends on BR2_PACKAGE_KEXEC_ARCH_SUPPORTS
 	depends on BR2_USE_MMU
 	depends on !BR2_USE_WCHAR || BR2_STATIC_LIBS || \
 		BR2_TOOLCHAIN_HAS_THREADS || \
-		!(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC) || \
 		!BR2_PACKAGE_HAS_UDEV
diff --git a/package/racehound/Config.in b/package/racehound/Config.in
index d13f90adb4..5b8bdc77bc 100644
--- a/package/racehound/Config.in
+++ b/package/racehound/Config.in
@@ -5,7 +5,6 @@ config BR2_PACKAGE_RACEHOUND
 	depends on BR2_USE_WCHAR # elfutils
 	depends on !BR2_STATIC_LIBS # elfutils
 	depends on BR2_TOOLCHAIN_HAS_THREADS # elfutils
-	depends on BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC # elfutils
 	# only x86/x86_64 supported
 	depends on BR2_i386 || BR2_x86_64
 	select BR2_PACKAGE_ELFUTILS
@@ -30,8 +29,7 @@ comment "racehound needs an Linux kernel >= 3.14 to be built"
 	depends on !BR2_LINUX_KERNEL
 	depends on BR2_i386 || BR2_x86_64
 
-comment "racehound needs a uClibc or glibc toolchain w/ C++, wchar, dynamic library, threads"
+comment "racehound needs a toolchain w/ C++, wchar, dynamic library, threads"
 	depends on BR2_i386 || BR2_x86_64
 	depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR || BR2_STATIC_LIBS \
-		|| !BR2_TOOLCHAIN_HAS_THREADS \
-		|| !(BR2_TOOLCHAIN_USES_UCLIBC || BR2_TOOLCHAIN_USES_GLIBC)
+		|| !BR2_TOOLCHAIN_HAS_THREADS
-- 
2.39.2

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

             reply	other threads:[~2023-10-22 15:41 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-22 15:41 Bernd Kuhls [this message]
2023-10-22 16:11 ` [Buildroot] [PATCH v2 1/1] package/elfutils: enable on musl Yann E. MORIN
2023-10-22 16:36 ` Yann E. MORIN
     [not found] ` <20231022163659.GQ2607__65.0460877054115$1697992660$gmane$org@scaer>
2023-10-22 17:03   ` Bernd Kuhls
2023-10-22 18:10     ` Yann E. MORIN

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20231022154133.1619344-1-bernd@kuhls.net \
    --to=bernd@kuhls.net \
    --cc=buildroot@buildroot.org \
    --cc=james.hilliard1@gmail.com \
    --cc=laurent@vivier.eu \
    --cc=romain.naour@gmail.com \
    --cc=tobias@waldekranz.com \
    --cc=wzab01@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.