Fwd: [PATCH] libstdc++: testsuite: use -lbsd for net_ts on RTEMS

Sebastian Huber sebastian.huber at embedded-brains.de
Wed Jun 22 06:36:46 UTC 2022


There seems to be an issue with the RTEMS pipe() implementation or the 
test configuration.

-------- Forwarded Message --------
Subject: [PATCH] libstdc++: testsuite: use -lbsd for net_ts on RTEMS
Date: Wed, 22 Jun 2022 02:24:19 -0300
From: Alexandre Oliva via Gcc-patches <gcc-patches at gcc.gnu.org>
Reply-To: Alexandre Oliva <oliva at adacore.com>
Organization: Free thinker, does not speak for AdaCore
To: gcc-patches at gcc.gnu.org, libstdc++ at gcc.gnu.org


Networking functions that net_ts tests rely on are defined in libbsd
on RTEMS, so link with it.

Regstrapped on x86_64-linux-gnu, also tested with a cross to
aarch64-rtems6.  Ok to install?


for  libstdc++-v3/ChangeLog

	* testsuite/lib/dg-options.exp (add_options_for_net_ts): Add
	-lbsd for RTEMS targets.
---
  libstdc++-v3/testsuite/lib/dg-options.exp |    6 ++++++
  1 file changed, 6 insertions(+)

diff --git a/libstdc++-v3/testsuite/lib/dg-options.exp 
b/libstdc++-v3/testsuite/lib/dg-options.exp
index 203bb0dfed505..15f37da468a5b 100644
--- a/libstdc++-v3/testsuite/lib/dg-options.exp
+++ b/libstdc++-v3/testsuite/lib/dg-options.exp
@@ -253,6 +253,12 @@ proc add_options_for_net_ts { flags } {
      # libsocket and libnsl for networking applications.
      if { [istarget *-*-solaris2*] } {
  	return "$flags -lsocket -lnsl"
+    } elseif { [istarget *-*-rtems*] } {
+	# Adding -Wl,--gc-sections would enable a few more tests to
+	# link, but all of them fail at runtime anyway, because the
+	# io_context ctor calls pipe(), which always fails, and thus
+	# the ctor throws a system error.
+	return "$flags -lbsd"
      }
      return $flags
  }


-- 
Alexandre Oliva, happy hacker                https://FSFLA.org/blogs/lxo/
    Free Software Activist                       GNU Toolchain Engineer
Disinformation flourishes because many people care deeply about injustice
but very few check the facts.  Ask me about <https://stallmansupport.org>


More information about the devel mailing list