Ver Fonte

package/pistache: enable on uClibc

pistache couldn't build on uClibc due to just one missing
definition. In addition, the Config.in comment was wrong as it said
that a glibc toolchain was needed, while in fact it could be glibc or
musl.

Cc: Thomas Ruschival <thomas@ruschival.de>
Cc: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Thomas Petazzoni há 3 anos atrás
pai
commit
82e61bed82

+ 33 - 0
package/pistache/0001-src-common-transport.cc-fallback-value-for-RUSAGE_TH.patch

@@ -0,0 +1,33 @@
+From 5feed6d2f86750bfe1e7c26d6fd4e8d2195ea81f Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+Date: Thu, 4 Aug 2022 19:54:23 +0200
+Subject: [PATCH] src/common/transport.cc: fallback value for RUSAGE_THREAD
+
+uClibc-ng currently does not define RUSAGE_THREAD, so let's add a
+fallback value until it gets fixed in uClibc-ng. The value is the same
+on all Linux systems, regardless of the CPU architecture.
+
+Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
+Upstream bug: https://mailman.openadk.org/mailman3/hyperkitty/list/devel@uclibc-ng.org/thread/MEXOUSFSH46UFS3AEMEIEPTL5U4HVEFL/
+---
+ src/common/transport.cc | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/src/common/transport.cc b/src/common/transport.cc
+index 62efb8c..0f3abb0 100644
+--- a/src/common/transport.cc
++++ b/src/common/transport.cc
+@@ -515,6 +515,10 @@ namespace Pistache::Tcp
+ 
+         rusage now;
+ 
++#if !defined(RUSAGE_THREAD)
++#define RUSAGE_THREAD 1
++#endif
++
+         auto res = getrusage(RUSAGE_THREAD, &now);
+         if (res == -1)
+             loadRequest_.reject(std::runtime_error("Could not compute usage"));
+-- 
+2.37.1
+

+ 1 - 3
package/pistache/Config.in

@@ -4,7 +4,6 @@ config BR2_PACKAGE_PISTACHE
 	depends on BR2_USE_WCHAR
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_INSTALL_LIBSTDCPP
-	depends on !BR2_TOOLCHAIN_USES_UCLIBC
 	depends on !BR2_TOOLCHAIN_HAS_BINUTILS_BUG_27597
 	select BR2_PACKAGE_RAPIDJSON
 	help
@@ -14,9 +13,8 @@ config BR2_PACKAGE_PISTACHE
 
 	  https://github.com/oktal/pistache
 
-comment "pistache needs a glibc toolchain w/ C++, gcc >= 7, threads, wchar, not binutils bug 27597"
+comment "pistache needs a toolchain w/ C++, gcc >= 7, threads, wchar, not binutils bug 27597"
 	depends on !BR2_INSTALL_LIBSTDCPP || \
-		   BR2_TOOLCHAIN_USES_UCLIBC || \
 		   !BR2_TOOLCHAIN_GCC_AT_LEAST_7 || \
 		   !BR2_TOOLCHAIN_HAS_THREADS || \
 		   !BR2_USE_WCHAR || \