[gcc r13-9013] [libstdc++] define zoneinfo_dir_override on vxworks
Jonathan Wakely
redi@gcc.gnu.org
Tue Sep 10 12:34:06 GMT 2024
https://gcc.gnu.org/g:2913d33b47f9169a8b80628b4382558a98d5c26e
commit r13-9013-g2913d33b47f9169a8b80628b4382558a98d5c26e
Author: Alexandre Oliva <oliva@adacore.com>
Date: Thu Apr 18 08:00:52 2024 -0300
[libstdc++] define zoneinfo_dir_override on vxworks
VxWorks fails to load kernel-mode modules with weak undefined symbols.
In RTP mode modules, that undergo final linking, weak undefined
symbols are not a problem.
This patch adds kernel-mode VxWorks multilibs to the set of targets
that don't support weak undefined symbols without special flags, in
which tzdb's zoneinfo_dir_override is given a weak definition.
for libstdc++-v3/ChangeLog
* src/c++20/tzdb.cc (__gnu_cxx::zoneinfo_dir_override): Define
on VxWorks non-RTP.
(cherry picked from commit da3504ae4d1e6872585b1107a4932efd3824e943)
Diff:
---
libstdc++-v3/src/c++20/tzdb.cc | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/libstdc++-v3/src/c++20/tzdb.cc b/libstdc++-v3/src/c++20/tzdb.cc
index e03f4a5c32ac..dfd4c71a152e 100644
--- a/libstdc++-v3/src/c++20/tzdb.cc
+++ b/libstdc++-v3/src/c++20/tzdb.cc
@@ -70,8 +70,9 @@ namespace __gnu_cxx
#else
[[gnu::weak]] const char* zoneinfo_dir_override();
-#if defined(__APPLE__) || defined(__hpux__)
- // Need a weak definition for Mach-O.
+#if defined(__APPLE__) || defined(__hpux__) \
+ || (defined(__VXWORKS__) && !defined(__RTP__))
+ // Need a weak definition for Mach-O et al.
[[gnu::weak]] const char* zoneinfo_dir_override()
{
#ifdef _GLIBCXX_ZONEINFO_DIR
More information about the Libstdc++-cvs
mailing list