Skip to contentSkip to conversation

lttng-tools: needs glibc

PATCH New Baruch Siach 3 participants 5 messages Sep 15, 2017 – Nov 23, 2017

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 lttng-tools: needs glibc

This commit partially reverts commit a6bb295642919 (lttng-tools: update to 2.9.5) that enabled lttng-tools for uClibc and musl. Upstream code does not detect dlmopen() specifically. configure only checks which library defines dlopen(), and fails the configuration when none is found. The code of the prog.c test still relies on dlmopen() GNU extension that uClibc and musl do not implement currently.

Fixes:
http://autobuild.buildroot.net/results/add/add97b4b3f45841249f239367452205c38d4e4df/
http://autobuild.buildroot.net/results/382/3825c88bb8a23708e4c2fed99f2417555078c65a/
http://autobuild.buildroot.net/results/4ae/4aef36977f039a1533b409a7c172f0ceaa2c6088/

Cc Waldemar Brodkorb <[email protected]>
Cc Philippe Proulx <[email protected]>
---
 package/lttng-tools/Config.in | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)
package/lttng-tools/Config.in +5 -2
index 9c86cc264643..b84f201c2a22 100644
@@ -4,6 +4,8 @@ config BR2_PACKAGE_LTTNG_TOOLS
 	depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on !BR2_STATIC_LIBS # uses dlfcn
+	# uclibc/musl don't implement dlmopen()/LM_ID_BASE
+	depends on BR2_TOOLCHAIN_USES_GLIBC
 	select BR2_PACKAGE_LIBURCU
 	select BR2_PACKAGE_LIBXML2
 	select BR2_PACKAGE_POPT
@@ -27,6 +29,7 @@ config BR2_PACKAGE_LTTNG_TOOLS
 
 	  http://lttng.org
 
-comment "lttng-tools needs a toolchain w/ threads, dynamic library"
+comment "lttng-tools needs a glibc toolchain w/ threads, dynamic library"
 	depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS
-	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+		!BR2_TOOLCHAIN_USES_GLIBC
Signature · 1 line
2.14.1
#1 lore raw

PATCH 1/1 lttng-tools: needs glibc

Hi,
why we can't disable the dlmopen call in the test? Didn't I suggested a patch or was it just a discussion on irc?

best regards
Waldemar

Quoted 47 lines

Am 15.09.2017 um 11:33 schrieb Baruch Siach <[email protected]>:

This commit partially reverts commit a6bb295642919 (lttng-tools: update to 2.9.5) that enabled lttng-tools for uClibc and musl. Upstream code does not detect dlmopen() specifically. configure only checks which library defines dlopen(), and fails the configuration when none is found. The code of the prog.c test still relies on dlmopen() GNU extension that uClibc and musl do not implement currently.

Fixes:
http://autobuild.buildroot.net/results/add/add97b4b3f45841249f239367452205c38d4e4df/
http://autobuild.buildroot.net/results/382/3825c88bb8a23708e4c2fed99f2417555078c65a/
http://autobuild.buildroot.net/results/4ae/4aef36977f039a1533b409a7c172f0ceaa2c6088/

Cc Waldemar Brodkorb <[email protected]>
Cc Philippe Proulx <[email protected]>

---
package/lttng-tools/Config.in | 7 +++++--

1 file changed, 5 insertions(+), 2 deletions(-)
package/lttng-tools/Config.in +5 -2
index 9c86cc264643..b84f201c2a22 100644
@@ -4,6 +4,8 @@ config BR2_PACKAGE_LTTNG_TOOLS
   depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS
   depends on BR2_TOOLCHAIN_HAS_THREADS
   depends on !BR2_STATIC_LIBS # uses dlfcn
+    # uclibc/musl don't implement dlmopen()/LM_ID_BASE
+    depends on BR2_TOOLCHAIN_USES_GLIBC
   select BR2_PACKAGE_LIBURCU
   select BR2_PACKAGE_LIBXML2
   select BR2_PACKAGE_POPT
@@ -27,6 +29,7 @@ config BR2_PACKAGE_LTTNG_TOOLS
 
     http://lttng.org
 
-comment "lttng-tools needs a toolchain w/ threads, dynamic library"
+comment "lttng-tools needs a glibc toolchain w/ threads, dynamic library"
   depends on BR2_PACKAGE_LIBURCU_ARCH_SUPPORTS
-    depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS
+    depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_STATIC_LIBS || \
+        !BR2_TOOLCHAIN_USES_GLIBC
Signature · 1 line
2.14.1
#2 lore raw

PATCH 1/1 lttng-tools: needs glibc

Hello,

Quoted 1 line · Waldemar Brodkorb

why we can't disable the dlmopen call in the test? Didn't I suggested a patch or was it just a discussion on irc?

We discussed patching lttng-tools to disable building the tests, but nobody ever sent a patch doing this I believe.

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#3 lore raw

PATCH 1/1 lttng-tools: needs glibc

Hi,
Thomas Petazzoni wrote,

Quoted 8 lines

Hello,

Quoted 1 line · Waldemar Brodkorb

why we can't disable the dlmopen call in the test? Didn't I suggested a patch or was it just a discussion on irc?

We discussed patching lttng-tools to disable building the tests, but nobody ever sent a patch doing this I believe.

Ah right. You pasted a configure.ac snippet, but I was too lazy to take it and propose a nice patch to br ml and upstream.

You still have the snippet? May be Baruch isn't so lazy?

best regards
Waldemar

#4 lore raw

PATCH 1/1 lttng-tools: needs glibc

In reply to Baruch Siach

Hello,

Quoted 12 lines · Baruch Siach

This commit partially reverts commit a6bb295642919 (lttng-tools: update to 2.9.5) that enabled lttng-tools for uClibc and musl. Upstream code does not detect dlmopen() specifically. configure only checks which library defines dlopen(), and fails the configuration when none is found. The code of the prog.c test still relies on dlmopen() GNU extension that uClibc and musl do not implement currently.

Fixes:
http://autobuild.buildroot.net/results/add/add97b4b3f45841249f239367452205c38d4e4df/
http://autobuild.buildroot.net/results/382/3825c88bb8a23708e4c2fed99f2417555078c65a/
http://autobuild.buildroot.net/results/4ae/4aef36977f039a1533b409a7c172f0ceaa2c6088/

Quoted 6 lines
Cc Waldemar Brodkorb <[email protected]>
Cc Philippe Proulx <[email protected]>
---
 package/lttng-tools/Config.in | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

This patch is no longer needed, thanks to
https://git.buildroot.org/buildroot/commit/?id=9dd25fe977867a2e7ef1ba40c3cbd12953ecaf51,
so I've marked your patch as Rejected. Thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com