Compiling GDB with '-fvisibility=hidden' removes the symbols that
should be exported.
This patch explicitly marks them as visible.
gdb/ChangeLog:
2020-01-16 Pedro Alves <palves@redhat.com>
Norbert Lange <nolange79@gmail.com>
PR build/24805
* gdbsupport/gdb_proc_service.h (PS_EXPORT): New.
(ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs)
(ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue)
(ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread)
(ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs)
(ps_plog): Redeclare exported functions with default visibility.
+2020-01-16 Pedro Alves <palves@redhat.com>
+ Norbert Lange <nolange79@gmail.com>
+
+ PR build/24805
+ * gdbsupport/gdb_proc_service.h (PS_EXPORT): New.
+ (ps_get_thread_area, ps_getpid, ps_lcontinue, ps_lgetfpregs)
+ (ps_lgetregs, ps_lsetfpregs, ps_lsetregs, ps_lstop, ps_pcontinue)
+ (ps_pdread, ps_pdwrite, ps_pglobal_lookup, ps_pstop, ps_ptread)
+ (ps_ptwrite, ps_lgetxregs, ps_lgetxregsize, ps_lsetxregs)
+ (ps_plog): Redeclare exported functions with default visibility.
+
2020-01-16 Nitika Achra <Nitika.Achra@amd.com>
* dwarf2loc.c (decode_debug_loclists_addresses): Handle
#endif /* HAVE_PROC_SERVICE_H */
+/* Make sure we export the needed symbols, in case GDB is built with
+ -fvisibility=hidden. */
+
+#define PS_EXPORT(SYM) \
+ __attribute__((visibility ("default"))) typeof (SYM) SYM
+
+PS_EXPORT (ps_get_thread_area);
+PS_EXPORT (ps_getpid);
+PS_EXPORT (ps_lcontinue);
+PS_EXPORT (ps_lgetfpregs);
+PS_EXPORT (ps_lgetregs);
+PS_EXPORT (ps_lsetfpregs);
+PS_EXPORT (ps_lsetregs);
+PS_EXPORT (ps_lstop);
+PS_EXPORT (ps_pcontinue);
+PS_EXPORT (ps_pdread);
+PS_EXPORT (ps_pdwrite);
+PS_EXPORT (ps_pglobal_lookup);
+PS_EXPORT (ps_pstop);
+PS_EXPORT (ps_ptread);
+PS_EXPORT (ps_ptwrite);
+
+#ifdef __sun__
+PS_EXPORT (ps_lgetxregs);
+PS_EXPORT (ps_lgetxregsize);
+PS_EXPORT (ps_lsetxregs);
+PS_EXPORT (ps_plog);
+#endif
+
#endif /* COMMON_GDB_PROC_SERVICE_H */